Introduction

Welcome to FluidFlow. FluidFlow is a state-of-the-art fluid flow simulator that allows you to simulate the flow of fluids in complex pipe networks, taking into account the phase state of the fluid and incorporating heat changes.

FluidFlow is more than a pipe network analysis program, it is a fully developed steady-state process-flow simulator.

System Requirements:

§1024 MB RAM (2048 MB recommended).

§All versions of Microsoft Windows & MS Windows Server since 2000.

§180 MB of free hard disk space.

§SVGA or higher resolution monitor (XGA recommended).

§Mouse or other pointing device.

Developer and Legal Copyright Owner:

Flite Software NI Ltd

Block E

Balliniska Business Park

Springtown Road

Derry

Northern Ireland.

BT48 0LY

Telephone: Int+ 44 2871 279227

Email: support@fluidflowinfo.com

Web: www.fluidflowinfo.com


How to Buy FluidFlow

You can purchase directly from Flite Software NI Ltd using the contact information below or by emailing sales@fluidflowinfo.com.

There may be a distributor in your region. Distributors can supply product and front line support. See our website www.fluidflow.co.uk or www.fluidflowinfo.com for a list of distributors.

FluidFlow Purchase Options
Website | www.fluidflowinfo.com
Email | sales@fluidflowinfo.com
Phone | Int+44 2871 279227
Fax | Int+44 2871 279806
Address | Flite Software NI Ltd Block E Balliniska Business Park Springtown Road Derry Northern Ireland BT48 0LY


FluidFlow Support

The preferred support method is via email support@fluidflowinfo.com. You may also telephone or fax the numbers below.

Note, when emailing our support team, please include a copy of the model together with any relevant supporting information.

FluidFlow Support Options
Website | www.fluidflowinfo.com
Email | support@fluidflowinfo.com
Phone | Int+44 2871 279227
Fax | Int+44 2871 279806
Address | Flite Software NI Ltd Block E Balliniska Business Park Springtown Road Derry Northern Ireland BT48 0LY


Definitions used in the Manual/Help File

Some of the nomenclature used in this manual/help file is as follows:

All fluid networks are built of items of fluid equipment such as pipes, valves, and pumps. Within the context of this manual and help file such items of fluid equipment are often called components.

Often the flow characteristics of the components are stored in a database to facilitate ease of reuse. Components are accessed via the Group Tabs on the Component Palette and their flow characteristics are stored and accessed via the Database menu.

Each fluid network (or part of a complete network) is built on the flowsheet. FluidFlow can open as many flowsheets as desired. As well as holding components the flowsheet can also display user entered text, results and input data. Each item on the flowsheet is called an element. For example a pump is a component and also an element once placed on the flowsheet. A block of user entered text on the flowsheet is also an element.

Gas Volume Definitions are given in the gas section.

Nomenclature used in mathematical formulas are given in the nomenclature section.


First Steps

This section explains how to install and activate the product.


Installation

FluidFlow is supplied as a single compressed installation file - FF3SETUP.EXE. This file is available via a download from our website www.fluidflowinfo.com (preferred method).

This is a common installation file for all possible modules. Simply run the file FF3SETUP.EXE and the installer will start and take you through the setup process. You can also use the setup program to install updates into your installation folder. Note in this case, only the executable, help files, etc., are updated; databases and your project files are not overwritten when you update.

It is possible to install remotely if you are a network administrator. The installation does not require any registry entries. For users not wishing to use an installer (for example, in locked environments) there is a zipped version of the application and associated folders.

This product has been fully tested and can also be installed to run under Citrix or Terminal Services.

If you intend to run many concurrent users across remote locations outside of a LAN, (i.e., a WAN across country borders) you need to purchase a global license.

Once installed the software reverts to trial mode until it is activated. So the first thing you need to do after installation is to activate the software. There is a simple activation process for both installed and unzipped installations.

You cannot activate over a LAN or WAN without using terminal services, remote desktop, Citrix, etc. - for activation the application must be running in the server process workspace. For more information about the activation process see the activation chapter.


Installation Kind

When installing FluidFlow for the first time, you are prompted to select the license type:

- The Standalone license, when activated, is linked to and stored on your local PC.

- The Named User licensing is an online license option, rather than hard-coded to a PC. To access this, you will need a 'Named User' account - please contact sales.

- The Network Server option should only be selected when installing on a network server, for access by one or more clients.

PSFF.INI Changes

Depending on the license type you select during setup, a PSFF.INI configuration settings file is created in the installation folder. This file tells the application where to find the equipment/fluid DATA, the user Preferences, and the license (if standalone/network).

The differences in the PSFF.INI, depending on the selected license type, are:

- Standalone

The paths to the Data, Preferences, and NetworkAccess Folders will be local to the PC, and will use standard format: "[Drive:]\[Public Documents]\Flite\FluidFlow3", for example, "C:\Users\Public\Documents\Flite\FluidFlow3".

- Named User

The paths are the same as "Standalone", i.e., local to the PC.

Additionally, a "UseNamedUserLicense=1" entry will be added to the PSFF.INI. On startup, when the application sees this flag, it will display the Login Named User dialog, prompting you to enter your Username and Password to login to your online account and access your license.

- Network Server

The paths to the Data, Preferences, and NetworkAccess folder use the UNC naming format: "\\ServerName\[Drive]\[Public Documents]\Flite\FluidFlow3", for example, "\\AcmeServerName\C\Users\Public\Documents\Flite\FluidFlow3".

Please see the Network Installation Instructions PDF for how to configure this path correctly as we never recommend using the [Drive] in the UNC path, but to instead create a share.

Upgrading an Installation

When upgrading from an existing installation, the 'Installation/License Kind' options are not presented by the install program. You need to edit the PSFF.INI in a text editor to update the configuration for different license types, if you decide to change this option after installation.

Changing to:

- Standalone

Typically you change the Data, Preferences, and NetworkAccess folder entries to use a local path. Additionally, you need to ensure the UseNamedUserLicense entry, if specified, is set to 0.

- Named User

Add the "UseNamedUserLicense=1" entry to the "[Options]" section. The Data and Preferences folder entries are relevant to the Named User installation kind - they can be either local or on a (shared) network path. The NetworkAccessFolder entry is ignored.

- Network Server

Update the NetworkAccessFolder entry to "point" to the path/share on your network where the license is located. Ensure the UseNamedUserLicense entry, if specified, is set to 0.


Activation

When you first start FluidFlow it will be automatically activated for you for a two week trial period. Please use the email address you entered when downloading the trial to login when prompted. After the two weeks are over, you will need to activate FluidFlow. Here are the various ways to activate the software (post trial period):

License Manager Activation

Once you have installed FluidFlow, the software must be activated to unlock the full functionality. Activation is the process of configuring access to the available FluidFlow modules.

When you purchase the software or obtain a lease license you will be provided with a Username and Password. Use the information provided in the Licence Manager as shown.

Click the 'Activate' button (on the bottom right) and the software will automatically obtain an activation code and activate the software. If a successful activation occurs the following message appears

Alternative Activation Methods

All of the alternative activation methods that were available prior to v3.30 are still available and these are described below.

You can use the 'Help | Activate FluidFlow...' menu option, which will display the dialog below.

Click on the "How to Register" tab and select one of the available registration methods.

The software generates a Product Id (29A4-5B64 in the example above) directly from your computer. Simply email this Product Id together with the calculation modules you need, or have purchased, to support@fluidflowinfo.com and an activation code and registration name will be provided (usually by return).

On receipt of your activation code and registration name (you can specify the registration name if you wish in the email you send to us), click on the "Activate" tab and enter the information you have received as shown below.

Assuming we have received the following activation data:

Registration Name: Flite Software NI Ltd

Activation Code: 0A0306A5365AAF07A3F28D3FA20BFB5C7BE5682AB8571C880EBF57FD384AB966A91D7A987EE0338F7EDFBF57FD384AB966A922ADEA59EF25E4187DBF57FD384AB966A9A3BFF345B0BA0CEACBAF6A2F9111094829563E472CE22F9180EFAF6A2F911109482940AF7E349247A69F8BF57FD384AB966A932CCEDCABF38D8FF4AF6A2F9111094829DBAEB3D1623F8B8BFAF6A2F9111094829256BDC8D142CD1ED6AF6A2F911109482918FF732900F4D7F42AF6A2F91110948291

Copy and paste this information from your email.

Click the 'Activate FluidFlow' button and the Registration Id will now contain a code instead of Evaluation Version and the modules that you have purchased will become available.

If you are activating a network version then you should also read the network activation and setup section for additional information.

Email Activation

If you choose to activate the software by email, please follow the steps outlined below.

Start FluidFlow and select the 'Help | Activate FluidFlow...' menu item:

Email the Product ID to support@fluidflowinfo.com. In this case, the Product ID is 29A4-5B64. The FluidFlow team will then reply with a Registration Name and Activation Code which you can use to activate the software.

Copy and paste the Registration Name and Activation Code into the relevant sections of the "Activate FluidFlow" dialog, taking care to ensure there are no spaces between characters of the activation code. Now you can select the "Activate FluidFlow" button and then close the dialog.

Note, you will need to exit and restart FluidFlow to complete the activation process.


Application Layout

The application work screen consists of two main windows. The flowsheet window where a schematic layout of the piping network is developed or built, and the data palette where data input is made, and results and warnings are shown.

You can have as many flowsheets open as desired. From a flowsheet viewpoint the application behaves similar to Microsoft Word's Multiple Document Interface, that is, you can tile, cascade, and select a flowsheet from the window menu or by clicking on the caption bar of the window. If you double-click the caption bar the flowsheet fills the available work area.

The data palette size can be adjusted by dragging the left side of the window border. The data palette is synchronized to the flowsheet, so if you click on a flowsheet element, the data palette is refreshed to reflect the current selections(s). This process also works in reverse, for example, if you click an element warning in the data palette, or a list item, the flowsheet selection updates to reflect this. All palettes can be undocked by either dragging via the caption bar or by double clicking on the caption bar.

The data palette has 6 tabbed windows used to display:

1. Messages and hints as a list with more detailed explanations available.
2. Input data via an Input Inspector, the rows in the input inspector vary depending on the element selected.
3. Result data via a configurable table.
4. A chart showing equipment performance data graphically.

5. A list of all flowsheet elements. You can decide which elements to display and the list can be sorted.

6. A watch window that is active only during a calculation.

The screenshot below shows the main parts of the application, with two open flowsheets and the data palette tabbed to show the input tab. The input tab contains the Input Editor.

Application Layout v3.4

At the top of the work screen are three rows of operators: (1) a set of drop down menus; (2) a toolbar; (3) the component palette. The component palette consists of a series of tab options. Within each tab are the equipment item icons or elements that are used to build a fluid network.

A flowsheet toolbar is positioned along the left hand side of the screen. Options here determine how you access and utilize the flowsheet window.

A status bar is positioned at the bottom of the application. This provides a quick reference to flowsheet status and to calculation methods used. The number of panels in the status bar depends on the modules you have activated, so the status bar in your installation may have fewer panels than shown above.


Network Version

The Network version of FluidFlow works almost exactly like the stand-alone version, with some minor differences:

§When FluidFlow starts you will be prompted to select a user name from a list of available users. (The 'Administrator' user can add and edit users as needed via the 'Database | Configure Users...' menu item.)

§When two users try to edit the same database (via the Databases menu), the first user that accesses the database will have read-write access, while the second will have read-only access.

Network Installation

The installation process on the network is the same as stand-alone: simply run FF3SETUP.EXE. FluidFlow can be installed across a network as long as the network folder has write access; FluidFlow does not require access to the Registry.

After installation your network users must be given permission/access rights to the FluidFlow folder. We would suggest that users are given full access to the folder that FluidFlow is installed in, e.g., \Flite\FluidFlow3, and that this access is propagated through the sub-folders.

However, if you wish to restrict full access, FluidFlow requires read access to all folders, and additionally, write access to the following folders:

§\Flite\FluidFlow3\Data (and all sub-folders)

§\Flite\FluidFlow3\Preferences (and all sub-folders)

§\Flite\FluidFlow3\Reports (and all sub-folders)

Note: In Windows XP, it is not enough to just change the properties of the folder(s), you must also check the 'Allow network users to change my files' checkbox in the Network Sharing and Security Properties for the folder. (Note: This can be accessed in Windows Explorer via the Properties context menu item, then the Sharing tab.)

Overriding the location of the Read-Write Folders

With some network installations, Administrators prefer to have control over which folders client users have read-write access to. To cater for this, FluidFlow provides PSFF.INI which allows the Administrator to specify the default location for \Data, \Preferences, and the Network Access files.

Note: FluidFlow does not create this INI file itself; it is the responsibility of the Network Administrator to create PSFF.INI and place it in the same folder as PSFF.EXE.

PSFF.INI

[Options]

; Data

UseCommonAppDataFolder=0

DataFolder=

; Preferences

UseLocalAppDataPreferencesFolder=0

PreferencesFolder=

; Network Access

UseCommonAppDataNetworkAccessFolder=0

NetworkAccessFolder=

Data

If UseCommonAppDataFolder=1 then FluidFlow will use the "C:\Document and Settings\All Users\Application Data\FluidFlow3\Data" folder. Otherwise FluidFlow will use the value of the DataFolder entry. If this is blank, or PSFF.INI does not exist, then FluidFlow will use "\FluidFlow3\Data".

NOTE: If DataFolder is specified then this folder MUST exist.

Preferences

If UseLocalAppDataPreferencesFolder=1 then FluidFlow will use the "C:\Document and Settings\[Username]\Local Settings\Application Data\FluidFlow3\Preferences" folder. Otherwise FluidFlow will use the value of the PreferencesFolder entry + [Username]. If this is blank, or PSFF.INI does not exist, then FluidFlow will use "\FluidFlow3\Preferences\[Username]".

Network Access

If UseCommonAppDataNetworkAccessFolder=1 then FluidFlow will use the "C:\Document and Settings\All Users\Application Data\FluidFlow3" folder. Otherwise FluidFlow will use the value of the NetworkAccessFolder entry. If this is blank, or PSFF.INI does not exist, then FluidFlow will use "\FluidFlow3".

NOTE: If NetworkAccessFolder is specified then this folder MUST exist.


Activation and Setup

Note: This section is only relevant if you have the Network module.

Installation Instructions

·Download FF3SETUP.EXE, and either physically at your server, or connecting via Remote Desktop Connection (or similar software), run the installation application.

·When installing FluidFlow3 on your network server, select Yes when prompted "Are you installing on a NETWORK server?" This will create a PSFF.INI (text) file, with a NetworkAccessFolder entry that points to the location of the license file on your server.

See NOTE 1 for information about configuring your FluidFlow3 network installation.

·Activate FluidFlow3 on your network server to create the license file in the folder pointed to by PSFF.INI | NetworkAccessFolder.

Note: You will need to do this either physically directly at the server machine, or via Terminal Services/RDC.

To "activate":

-Start the FluidFlow3 License Manager (FluidFlow3LM.EXE) located in the same folder as PSFF.EXE on your server.

-Go to the 'Activate' page.

-Enter:

Username: ******

Password: ******

-Click the 'Activate' button.

See NOTE 2 for information about activating your FluidFlow3 network installation.

·Start FluidFlow3 on your server – username: Administrator; password: psff

·Select the 'Database | Configure Users…' menu item and add your FluidFlow3 users.

·Provide your users with a link to PSFF.EXE on your server.

See NOTE 3 for information about sharing your FluidFlow3 application folder and creating a shortcut link.

Troubleshooting

The most usual issues reported for network installations and their resolutions are given below:

1. Unable to Activate

This is because you are trying to activate from a client machine. This is not possible because you are running the application in the client workspace and not the server workspace. For the purpose of activation ONLY, you can overcome this issue by connecting to the server via remote desktop (terminal services, citrix, etc.) or being physically present at the server to activate. So to activate a network version, run the application via remote desktop, or be physically at the server.

Another possible reason for "unable to activate" is because you do not have the correct read/write/modify permissions to the folder (and all subfolders) where FluidFlow is installed.

2. "User Limit [1] reached. No more users allowed." message always displayed no matter how many licenses. This is caused by the incorrect sharing of the FluidFlow folder. For more information see the NOTE 1 - Configuring your Network Installation.


Configuring your Network Installation (Sharing Folders and Setting

Navigation: Network Version > Activation and Setup >

Return to chapter overview

NOTE 1: Configuring your Network Installation (Sharing Folders and Setting

When you install FluidFlow3 the setup program creates a configuration text file - PSFF.INI - in the same folder as the application (PSFF.EXE), typically in "C:\Program Files (x86)\Flite\FluidFlow3".

This file will contain three entries: the location of the equipment data (DataFolder); the location of the user preferences (PreferencesFolder), and the location of the license file (NetworkAccessFolder). These are the only folders in FluidFlow3 that users need to have read-write access to for the application to function correctly. The FluidFlow3 application folder requires only read access.

FYI: The DataFolder needs to be read-write so that you can edit Line Equipment items such as Valves and Boosters via the 'Databases' menu items. The PreferencesFolder is where FluidFlow3 stores user-specific settings, e.g., 'Options | Calculation'. The NetworkAccessFolder is where the application tracks who is logged on against what is valid for the license.

The PSFF.INI entries default to folders under "[Public Documents]\Flite". The "Public Documents" folder is typically "C:\Users\Public\Documents". You can determine where it is on your machine by putting %PUBLIC% into the address bar of Windows Explorer.

When you do a network installation – by answering Yes to the "Are you installing on a NETWORK server?" prompt - your PSFF.INI will look like:

[Options]

DataFolder=\\YourServer\C$\Users\Public\Documents\Flite\FluidFlow3\Data

PreferencesFolder=\\YourServer\C$\Users\Public\Documents\Flite\FluidFlow3\Preferences

NetworkAccessFolder=\\YourServer\C$\Users\Public\Documents\Flite\FluidFlow3

Note: YourServer will be replaced by the name of your server machine.

IMPORTANT: This is where an issue might arise as FluidFlow3 assumes the C drive will be shared when you perform a network installation. We would recommend that you do not share the C drive itself, but share the "[Public Documents]\Flite\FluidFlow3" folder instead.

To do this: right-mouse click the "[Public Documents]\Flite\FluidFlow3" folder name in Windows Explorer. Select 'Properties | Sharing | Advanced Sharing' and check the 'Share this folder' option:

Click the 'Permissions' button and give full control to the 'Everyone' group:

If you share the FluidFlow3 folder (as described above), you need to modify PSFF.INI to reflect that. For example:

[Options]

DataFolder=\\YourServer\FluidFlow3\Data

PreferencesFolder=\\YourServer\FluidFlow3\Preferences

NetworkAccessFolder=\\YourServer\FluidFlow3


Activating FluidFlow3

Navigation: Network Version > Activation and Setup >

Return to chapter overview

NOTE 2: Activating FluidFlow3

There are a few ways to activate FluidFlow3, however, for a Network license activation, you do need to have access to the server machine (either physically, or via Terminal Server/Remote Desktop Connection/similar software.) This access is required to be able to get the correct Product Id (i.e., the Hard Disk Serial No.) for the server, or to run the FluidFlow3 License Manager.

Activating FluidFlow3 (via the FluidFlow3 License Manager - FluidFlow3LM.EXE):

NOTE: Depending on the version of your existing installation, you may not have this application. It can be downloaded from https://portal.fluidflowinfo.com/ffdownloads/v3/FluidFlow3LM.zip. Unzip this to the same folder as the FluidFlow3 application (PSFF.EXE) on your server.

·Ensure that FluidFlow3 is not running on the server machine.

·Start the FluidFlow3 License Manager (FluidFlow3LM.EXE) on the server machine (either physically or remotely logging in.)

·Select the 'Activate' page, and enter your Username and Password. Please contact sales@fluidflowinfo.com (or your local distributor) for your Username and Password, if you do not have them.

·Click the 'Activate' button.

Activating FluidFlow3 (via Activation Code):

·Start FluidFlow3 on the server machine (either physically or remotely logging in.)

·Select the 'Help | Activate FluidFlow…' menu item and make a note of the Product Id.

·Send this Product Id to sales@fluidflowinfo.com (or your local distributor) and an Activation Code will be generated and emailed back to you.

·In the 'Activate FluidFlow' dialog, paste the code into the 'Activation Code' input area, along with the 'Registration Name' provided.

·Restart FluidFlow3.

NOTE: You can generate the Activation Code yourself by logging into your account on our server:

·Start FluidFlow3 on the server machine and get the Product Id from the 'Help | Activate FluidFlow…' menu item.

·Log in to your account on our server (https://portal.fluidflowinfo.com/portal/login.php). Please contact sales@fluidflowinfo.com (or your local distributor) for your Username and Password, if you do not have them.

·Select 'Generate Code' from the 'Your Info' drop-down.

·Ensure the correct Product Id is entered.

·Click the 'Generate Activation Code' button.

·Copy and paste the generated code into the 'Activate FluidFlow' dialog in FluidFlow3 and restart the application.

Activating FluidFlow3 (via License File - FF3.LIC):

·Start FluidFlow3 on the server machine (either physically or remotely logging in.)

·Select the 'Help | Activate FluidFlow…' menu item and make a note of the Product Id.

·Send this Product Id to sales@fluidflowinfo.com and a License File (FF3.LIC) will be created and emailed back to you.

·Stop FluidFlow3.

·Copy the FF3.LIC License file to the NetworkAccessFolder on the server.

·Restart FluidFlow3.

NOTE: The location of the "NetworkAccessFolder" is specified in the PSFF.INI file.


NOTE 3: Client Setup (Sharing the Application Folder/Creating Shortcut)

After installing and activating FluidFlow3 on the network server you can setup the client machine by placing a link on the client's desktop to the FluidFlow3 application (PSFF.EXE).

For a client to be able to access the FluidFlow3 application, the folder it is located in on the server must be shared for read access. Typically FluidFlow3 is installed into the "C:\Program Files (x86)\Flite\FluidFlow3" folder on your server.

To share this folder as FluidFlow3App, for example: right-mouse click the "C:\Program Files (x86)\Flite\FluidFlow3" folder name in Windows Explorer. Select 'Properties | Sharing | Advanced Sharing' and check the 'Share this folder' option:

Click the 'Permissions' button and allow 'Read' for the 'Everyone' group:

You can now create a shortcut link that clients can use:

·Right-click on the desktop and select the 'New | Shortcut' menu item.

·Enter the location of the PSFF.EXE file, e.g., '\\YourServer\FluidFlow3App\PSFF.exe' and click 'Next'.

·Enter the title for the shortcut, e.g., 'FluidFlow3 (Network)' and click 'Finish'.


Startup

If you have the network module activated the product starts slightly differently to the stand-alone version. If you do not have the network module activated then skip this section.

The first step in the start-up for a network user is a simple logon screen:

§Select your username from the list and enter the password given to you by the FluidFlow administrator.

§Select from the available modules the calculation functionality you will need. In the above we have selected the Liquid, Gas, and Two-Phase Calculations modules.

§Press the OK button and the application will start.

The next user to log on will see the following Logon dialog.

Notice that there are now less modules available as Liquid, Gas and Two-Phase modules were taken by the Administrator who logged on first.


Configure Users (Administrator-only)

To be able to make changes to user information you must login to the application as Administrator.

NOTE: The default Administrator account password is: psff

You must select at least one module in order to log on.

The application will start in the normal manner but an additional item - Configure Users - will appear at the end of the 'Database' menu items.

Select the 'Configure Users...' menu option to obtain the dialog from which all adjustments can be made.

From this dialog you can add or delete users, change passwords, or just view the current connections.

NOTE: It is not possible to delete the Administrator user, but it is possible to change the Password to your own from the default 'PSFF'.


Database Editing

To avoid conflicts with multiple users editing data concurrently, only one network user can have read-write access to a database table at a time. The first user to open a database table will have full access to it; all subsequent users will have read-only access while the database table is in use by the first user.

If any table is already in use the following applies:

§The caption in the dialog will include "[Read-Only]".

§'Add', 'Edit', and 'Delete' buttons will be disabled.

§The record properties grid will not allow individual properties to be changed.


Help Files

Security updates to Microsoft Windows have introduced some severe restrictions for accessing HTML Help (CHM) files across network drives. Under Windows most file links in HTML Help files will now generally not work at all and HTML Help itself is also severely restricted. Without registry changes on the user's computer, HTML Help now cannot be used at all on networks. This has an effect on the FluidFlow Network Version as all client machines that try to display the Help file will receive a "Page not found" message.

More details and a fix for this problem are available on the Help & Manual (http://www.helpandmanual.com/products_hhreg.html) website.

Alternatively, there is a workaround to allow a client machine to display Network-based HTML Help files, but it does involve modifying the Registry on the client machine. To do this:

1. Click 'Start', click 'Run', type 'regedit', and then click 'OK'.

2. Locate and then click the following subkey:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions

Note: If this registry subkey does not exist, create it. To do this, follow these steps:

a. On the 'Edit' menu, point to 'New', and then click 'Key'.

b. Type 'ItssRestrictions', and then press 'ENTER'.

4. Right-click the ItssRestrictions subkey, point to 'New', and then click 'DWORD Value'.

5. Type 'MaxAllowedZone', and then press 'ENTER'.

6. Right-click the MaxAllowedZone value, and then click 'Modify'.

7. In the Value data box, type '1', and then click 'OK'.

This will allow you to access CHM files on a shared network folder. For more information see: http://support.microsoft.com/?kbid=896054

Note: Always make a backup of the Registry before making any modifications so that you can 'rollback' the changes if anything goes awry. To do this, run Regedit, select the 'File | Export' menu item, select the 'All' option from 'Export Range', enter a filename and click 'Save'. You can later use the 'File | Import' menu item if you want to revert to your original Registry.

Help Files on the Network - Alternative Solution

FluidFlow also supports browser-based help. If you wish to use this please download the FF3BHELP.ZIP file from our website - https://portal.fluidflowinfo.com/ffdownloads/v3/FF3BHelp.zip - and unzip it to the [FluidFlow3 folder]\Help folder to give: "[FluidFlow3 folder]\Help\FFEnglish" and "[FluidFlow3 folder]\Help\QuickStart" folders.

For FluidFlow3 to use this, create PSFF.INI - if it does not already exist - in the same folder as PSFF.EXE and add an 'Options | UseBrowserHTMLHelp' entry:

[Options]

UseBrowserHTMLHelp=1


User Interface

The FluidFlow workspace comprises two main windows: the flowsheet editor window where the schematic layout of the piping network is developed or 'built' and the data palette where input data and calculated results are displayed. The flowsheet editor and the data palette are synchronized such that any component selected on the flowsheet is also selected on the data palette, and vice versa.

At the top of the workspace are three rows of operators: (1) a set of drop down menus; (2) a file and database management toolbar; (3) the component palette (shown as a series of tab options). Flowsheet toolbars (for tools and settings) are positioned along the left hand side of the screen and a status bar is at the bottom of the screen. The file name and path of the active flowsheet is shown in the title bar at the very top of the window.

The two main windows (the flowsheet and the data palette) can be resized by dragging the center boundary. The View menu allows the different palette tabs to be displayed or hidden, thus allowing the flowsheet editor window to be further expanded. The scroll bars allow you to navigate the flowsheet.


User Interface - Flowsheet

The flowsheet is the main work area within the program where you build the network model. Flowsheet operations have been designed to be as intuitive as possible, usually in line with the more common Windows applications.

The available flowsheet area is extensive but only a subsection is visible at any one time. You can scroll the visible area in the normal way, by clicking the scroll bars. Dragging on the thumbtrack causes the flowsheet to be immediately repainted and this is useful when viewing large models.

The flowsheet is dynamically linked (synchronized) with the Input Editor and the Data Palette. There are five Data Palette Views, selected using the named tabs:

§ Messages

§ Results

§ Chart

§ List

§ Watch

Synchronization means as you click on the flowsheet the currently selected View is updated to reflect the flowsheet selection(s). Sometimes the reverse is true. For example clicking on an Error Message or Warning will select the associated item in the flowsheet.

The design goals of the FluidFlow flowsheet are:

§To provide the tools and interface to allow the easiest possible route to network construction.

First time users need to be able to construct networks quickly without being intimidated by a complex user interface. Seasoned users need powerful features to help adjust and configure existing networks. The flowsheet has been designed to be simple to use, but with many advanced features and options.

§To provide an integrated, responsive work area.

The flowsheet code has been optimized to provide the interactive response that even the most demanding users expect. The user response when dealing with larger networks is a pleasant surprise. Integration of the flowsheet with the data input, result tables, warning messages, lists, charts, etc., comes as standard and this provides a unique user interactive experience.

§To provide a design communication medium.

Many of our users share their designs with colleagues. The ability to annotate the flowsheet with user text, component names and numbers, component input and result data in a configurable way means that you can decide what to show and how to show it.

§To allow as many flowsheets, as you need, to be available within the application.

Modern software users demand standards and features similar to class leading word processors and spreadsheet applications. It seems natural to want to open more than one flowsheet at any time so we can cut and paste between them, review previous work, run scenarios, etc.

Let's take a quick look at some of the powerful features and configurations available as part of this overview

1. Ability to annotate the flowsheet with:

§Freely entered text.

§Calculated Results (user can define which results are displayed).

§Data Input (user can define which inputs are displayed).

§Node and Pipe Numbers.

§Unique component names

2. Ability to place components anywhere on the flowsheet, but with some tools (snap options) that enable you to keep a neat appearance. This has been accomplished by providing the ability for pipes to snap either horizontally/vertically (ortho), or at 30° and 90° (isometric), or with no snap.

3. Remember there is still the ground-breaking ability to multi-mark, globally edit, globally move, auto-change of bends, open pipes, tees and crosses, etc., found in V2. As before the flowsheet is always synchronized to the graph, data input, lists and result tab pages. Additionally it is now possible to open as many flowsheets as desired and to cut, copy and paste between them.

4. Ability to fully configure and use FlyBy Hints.


Tools Toolbar

The flowsheet tools are used to either select, resize, or add graphic objects to the flowsheet.

The flowsheet toolbar is intrinsically linked to the cursor shape and operation. For instance, the Selector Tool returns the cursor shape to the selected crosshairs option (orthogonal, isometric or none), but the cursor will then turn to a finger-pointer when hovered over an element.


Selector

Resets the mouse cursor to the default flowsheet cursor. When the selector is active, you can select/deselect flowsheet elements.


Mark Rectangular Area

mark rectangular area

Select then: Click, drag and click to outline and mark a selected rectangular area of the model. All elements within the outline will be selected. Click on white space to remove. Think of this tool as a "lasso" which helps you capture a specific set of nodes or indeed, the entire model within the rectangular area.


Mark Any Area

Multi-marking Tool:

Select, then: Click, drag, click, drag......double click to outline and mark a selected irregular area of the model. All elements within the outline will be selected. Click on white space to remove. Use on isometric layouts.


Resizer

Resize element icons on the flowsheet (except pipes).

Click on element and use handles to resize.


Text

Place free text on the flowsheet. Select this icon and click on the flowsheet. Enter/edit text via the Text property field (see below). Resize the text box by selecting the Resizer Tool followed by selecting the text on the flowsheet. You can then stretch the text box to the required size.

Input Properties

Property | Description
Text | Clicking this will display the Set Text dialog in which you can enter your text and select your font.
Alignment | Specify the Horizontal Alignment of text in the Text Box. This can be one of: Left, Center, or Right.
Layout | Specify the Vertical Layout of the text. This can be either Top, Center, or Bottom.
Margin | Enter the number of pixels spacing for the text margins from all sides.
Border Style | Select either None (no border) or Solid (single lined border.)
Border Color | Select the color of the border you want (if Solid is selected for Border Style.) This defaults to Black.
Fill Style | Select either None (no filling) or Solid (filled with the Fill Color property.)
Fill Color | Select the color of the filling for the text box (if Solid is selected for Fill Style.) This defaults to White.
User-Defined Fields | Displays the User-Defined Fields dialog.


Image

Places an image on the flowsheet. First, select this icon and click on the flowsheet to place an image holder. Resize the image box by selecting the Resizer Tool and then selecting the image on the flowsheet. Use the 'Filename' property field to specify what image to use.

Input Properties

Property

Description

Source

Select either Embed or Link to File.

When "embedded", the image specified by the Filename (below) will be stored in the FluidFlow3 file - any changes to the underlying image file will not be shown on the flowsheet.

When "linked", only the Filename is stored and any changes to the underlying image file will be reflected when the flowsheet is refreshed.

Filename

The filename of the image to load. Use the '...' button to select an existing file.

Fit

Specifies whether the image is shown as its 'Actual Size' from the underlying file or is 'Stretch to Fit' the Image Box created on the flowsheet.

Opacity

Specify a value of between 1% (nearly fully transparent) and 100% (fully opaque.)

Border Style

Select either None (no border) or Solid (single lined border.)

Border Color

Select the color of the border you want (if Solid is selected for Border Style.) This defaults to Black.

User-Defined Fields

Displays the User-Defined Fields dialog.


Table

Places an image of a worksheet/table on the flowsheet. First, select this icon and click on the flowsheet to place a table holder. Resize the table box by selecting the Resizer Tool and then select the table on the flowsheet. Use the 'Filename' property field to specify what XLSX file to use as the source of the worksheet (only the first worksheet in a workbook is used.)

Input Properties

Property | Description
Filename | The filename of the XLS/XLSX spreadsheet to load. Use the '...' button to select an existing file.
Fit | Specifies whether an image of the first worksheet in the file is shown as its 'Actual Size' from the underlying file or is 'Stretch to Fit' the table box created on the flowsheet.
Opacity | Specify a value of between 1% (nearly fully transparent) and 100% (fully opaque.)
Border Style | Select either None (no border) or Solid (single lined border.)
Border Color | Select the color of the border you want (if Solid is selected for Border Style.) This defaults to Black.
User-Defined Fields | Displays the User-Defined Fields dialog.


Rectangle

Place a rectangular box on the flowsheet. Select this icon and click on the flowsheet. Resize the box by selecting the Resizer Tool followed by selecting the box on the flowsheet. You can then stretch it to the required size.

Input Properties

Property | Description
Border Style | Select either None (no border) or Solid (single lined border.)
Border Color | Select the color of the border you want (if Solid is selected for Border Style.) This defaults to Black.
Fill Style | Select either None (no filling) or Solid (filled with the Fill Color property.)
Fill Color | Select the color of the filling for the text box (if Solid is selected for Fill Style.) This defaults to White.
User-Defined Fields | Displays the User-Defined Fields dialog.


Round Rectangle

Place a rectangular box, with rounded corners, on the flowsheet. Select this icon and click on the flowsheet. Resize the box by selecting the Resizer Tool followed by selecting the box on the flowsheet. You can then stretch it to the required size.

Input Properties

Property | Description
Border Style | Select either None (no border) or Solid (single lined border.)
Border Color | Select the color of the border you want (if Solid is selected for Border Style.) This defaults to Black.
Fill Style | Select either None (no filling) or Solid (filled with the Fill Color property.)
Fill Color | Select the color of the filling for the text box (if Solid is selected for Fill Style.) This defaults to White.
User-Defined Fields | Displays the User-Defined Fields dialog.


Circle

Place a circular box on the flowsheet. Select this icon and click on the flowsheet. Resize the box by selecting the Resizer Tool followed by selecting the box on the flowsheet. You can then stretch it to the required size.

Input Properties

Property | Description
Border Style | Select either None (no border) or Solid (single lined border.)
Border Color | Select the color of the border you want (if Solid is selected for Border Style.) This defaults to Black.
Fill Style | Select either None (no filling) or Solid (filled with the Fill Color property.)
Fill Color | Select the color of the filling for the text box (if Solid is selected for Fill Style.) This defaults to White.
User-Defined Fields | Displays the User-Defined Fields dialog.


Settings Toolbar

The flowsheet settings toolbar is used to control the appearance of the flowsheet. It contains a number of shortcuts to other menu options. Hover over the buttons to display the tips for each "setting".

Two additional flowsheet tools are positioned on the upper toolbar, viz the Flowsheet Scale and Flowsheet Grid Style. For consistency, they are described in this section.


Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Orthogonal Crosshairs

Toggle on/off orthogonal crosshairs.


Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Isometric Crosshairs

Toggle on/off isometric crosshairs display.


Show/Hide FlyBys

Display or hide FlyBys when you move over an element on the flowsheet. FlyBys can be user-configured for content and position in the Flowsheet Options dialog.

The flowsheet below shows a transparent flyby, aligned bottom right.


Flowsheet Settings | Show/Hide Unique Name

Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Show/Hide Unique Name

Display or hide the unique name entered into the Unique Name Input field.


Flowsheet Settings | Show/Hide Node Numbers

Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Show/Hide Node Numbers

Toggle on/off the node ID number display on the flowsheet. Node element IDs are numbered positive from 1, e.g., (24).


Flowsheet Settings | Show/Hide Pipe Numbers

Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Show/Hide Pipe Numbers

Toggle on/off the pipe ID number display on the flowsheet. Pipe IDs are numbered negatively from -1, e.g., (-24).


Flowsheet Settings | Show/Hide Properties

Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Show/Hide Properties

Display or hide the element properties as defined in the Properties Input field.


Flowsheet Settings | Show/Hide Graphic Objects

Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Show/Hide Graphic Objects

Toggle on/off the display of the text, image, table, rectangle, round rectangle, and circle elements on the flowsheet.


Flowsheet Settings | Scale

Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Scale

This is located on the main toolbar and is used to set the scale of the model within the flowsheet. Flowsheet element sizes (and graphic objects) are scaled accordingly.

Note that this is not necessarily a "smooth" process - this is because flowsheet components must have a discrete size that is not exactly scalable at all possible sizes.


Flowsheet Settings | Grid Style

Navigation: User Interface > Flowsheet > Settings Toolbar >

Return to chapter overview

Grid Style

This is located on the main toolbar and is used to set the flowsheet grid style to Fine, Coarse, or to Hide the grid.


Navigation: User Interface > Flowsheet >

Return to chapter overview

Operations


Placing a component

Select a component from a particular group by first clicking on the group tab and then selecting the desired component. The screen capture below shows the Valves group tab selected and the available valves (and associated valve icons) displayed.

Click to select a component and the cursor immediately changes to the appropriate icon as it is moved over the flowsheet. Click to drop the component in the desired position on the flowsheet. The cursor (pointer) remains live with this icon until another is selected or the Selector Tool is selected. Thus, you can place many of the same elements on the flowsheet without refreshing the cursor.

You can insert a component in an existing pipe by hovering the cursor over the pipe until the icon changes to a "split cursor".

By using the snap and grid tools you can layout component items at fixed positions only; with snap off you can place component items at any flowsheet location.


Connecting a pipe

Click on the pipe group tab and select a pipe from the pipe icons. There are 14 different pipe, tube and duct materials/types to select from.

As you move the cursor over the flowsheet area the cursor changes shape to a pipe and if you have ortho or iso snap on, then you will also see cursor crosshairs as you move around the flowsheet.

Pipes can be "rubber banded" across the flowsheet as follows (after selecting the desired pipe type):

1.Lone pipe: Click, drag and click: pipe starts and ends with an Open Pipe Boundary.

2.Connect to an existing pipe end: click existing pipe end (open pipe), drag and click.

3.Connect to any position along an existing pipe: hover over existing pipe - click, drag and click.

4.Connect to a component: hover over existing component - click, drag and click.

You can press the Escape (Esc) key at any time while rubber-banding in order to cancel the pipe connection operation.

Unless connecting to an existing pipe or element, a pipe will terminate with an open pipe. Essentially this is a special type of Junction (i.e., one with a single connecting pipe). Open pipe junctions adjust themselves automatically depending on the number of connecting pipes (maximum four), i.e., two connecting pipes generate an elbow of bend; three a tee or a wye; four a cross.

If you place a specific junction from the Junctions component tab onto the flowsheet (say a bend) then this item will always remain a bend and must have 2 pipe connections before it can be included in any calculation.

If you are connecting a pipe, and move the cursor outside of the visible flowsheet area, the flowsheet automatically scrolls. This enables you to connect to elements outside of the visible flowsheet region.

When creating a pipe-on-pipe connection, notice that the cursor shape changes to indicate the fact that the pipe will be split. If you click whilst in this position a junction component is automatically inserted into the pipe. How the pipe is split is determined by the setting in the flowsheet options dialog. Either the pipe will split in two equal lengths, each length having the same properties as the original pipe or the original length will be retained and a new pipe added - the new pipe copied from the default setting.

The flowsheet options dialog may be accessed as follows:

§Right mouse button click via the flowsheet popup menu

§From the main menu option - Options -> Flowsheet

§From the toolbar button...

FluidFlow traps and prevents unallowed connections, for instance, more than two pipes to a pump or more than four pipes to a cross. The cursor changes shape as shown.

Note: For a junction of more than four pipes use a Connector No Resistance; For a boundary of known or assigned pressure requiring more than one pipe use a Reservoir.


Deleting an element

To delete a component (or a number of components) either:

§Select the component(s) and use the Ctrl Key AND the Del key together.

§Use the cut button on the upper toolbar

§Edit | Delete

If you delete a single node then all connecting pipes are also deleted. This is because a pipe must always be connected to 2 nodes, it is not possible to have an unterminated pipe.

You can delete a group of components, if more than one flowsheet element is selected. See the flowsheet section on multi-selections for information on how to make multiple node and pipe selections.


Selecting elements

When you click on any element on the flowsheet it becomes selected. The flowsheet shows selections by highlighting the selected elements.

In this context an element can be a pipe, a fluid equipment item (node) or an annotation.

It is possible to select more than one element or to deselect already selected elements.

There are 3 available methods for making multiple selections.

1.On the flowsheet, hold down the SHIFT key and use the mouse to select or deselect components.

2.Move to the Lists tab and make multi-selections from the list box by using the SHIFT and Ctrl keys.

3.Mark off an area of any shape using either marker tool.

The ability to make multi-selections is an important program feature. With multi-selections you can make changes in the input editor and changes are made to all selected elements. If you wish to make a printout or export and you have more than one element selected then only the selected elements get printed or exported. You can delete more than one element at a time, drag all selected items together, etc.

List Synchronization

The flowsheet and the various Views (tabs) in the Data Palette are synchronized, making the combination of multi-selection and the List tab very powerful. If you hold down the SHIFT key while making a mouse click on an element then the following occurs... if the element is not selected it becomes selected; if the element is already selected then it becomes unselected. In the screen display below four Tee junctions have been selected using this method.

At the same time the identical junctions in the List have been highlighted - click on the Lists Tab in the Data Palette and tick the junctions box, see below...

Conversely, to make multi-selections using the list box use either the SHIFT or Ctrl keys together with left mouse clicks.

Mark off an area of any shape using the marker tool(s).

Sometimes you may wish to select all of the elements in a given area. Usually the area required is rectangular, but if you normally use the iso mode for layout, then rectangular areas are often not the most useful. To provide the maximum flexibility there are two area marker tools.

The upper tool allows for marking rectangular areas

The lower tool is used for marking an area of any shape.

Both tools work in a similar way. A complex shape is drawn in the diagram below.

Double clicking the left mouse button will join the last point to the first point, mark off all the selected items in the dotted region, and reset the tool to the selection tool. Rectangular areas are also defined by using a double click.

The same area after a double click is shown below.

Note that if an element lies partially in the marked area it will also be selected. You can see that the pipe leaving the non-return valve is an illustration of this in the above diagram.


Flowsheet Snap, Scale and Grid

The flowsheet can be operated in any one of three modes:

1.Free format.

2.With an ortho snap.

3.With an iso snap.

Coupled with these options the user has control of the scale of the flowsheet (zoom) and the grid characteristic.

The snap and scale settings are saved with each flowsheet so that you can work in different modes in different flowsheets. It is possible to change modes at any time, although this is not recommended if you wish to retain a consistent layout of elements.

Each mode is selected by toggling either of the two buttons on the flowsheet toolbar shown below...

If the button is highlighted, then the corresponding mode is selected, if neither button is highlighted then free format is selected.

Scale and grid settings and visibility are made from the two drop-down options on the upper toolbar:

The left drop-down provides the scale of the flowsheet; the right drop down allows you to show no grid, a fine grid or a coarse grid. (In Free Format mode this setting is ignored).

Free Format

This means there is no snap and elements can be placed anywhere. You can even overlap components if you wish, although this is not recommended as the flowsheet can quickly become unreadable.

A network constructed in free format is shown below.

Ortho Snap

In this mode the snap grid is represented by a square mesh and the center of each element snaps to a predefined position. You can show the snap grid if you find this a useful concept. The distance between the snap positions and the default size of each component is controlled via the scale and grid settings.

The screen display shown below shows an orthogonal layout with a coarse grid.

Notice that each node element can only be positioned at a discrete point on the grid and that irrespective of the node size it is the center of the node that snaps to the grid point. Snapping to the center of each node means that pipes appear horizontally or vertically provided the nodes are horizontally or vertically aligned irrespective of node element size, which can be a useful asset in making tidy layouts.

Iso Mode

In this mode the center of each node snaps to a predefined position on an isometric grid (i.e., 30° and 90° lines only). Similar to the ortho mode the scale and grid visibility controls also apply. How does the Ferris Wheel look as an isometric view ?, see below.

As you can see this mode aids tidy drawing of horizontal and vertical layouts (horizontal lines are now at 30°). The odd man out above does not lie on a horizontal or vertical plane with the connector but at a slope.

Node that the ortho and snap modes are not meant to represent accurate engineering drawings that you would expect to find in a CAD package. Instead they are simply layout aids to help you represent the network layout in a familiar format. You should also note that text never follows any snap rules. Text can always be placed at any position.


Placing and displaying free text

You can annotate with text at any position in the flowsheet, irrespective of snap mode text can always be placed at any position.


Configuring and showing input data and results

Calculation results or input data can be set to either visible (show) or hide for each component. In addition the properties displayed can be selected individually and their anchor position also controlled.

To do this, from the input editor all components have a common property called "Properties on Flowsheet". The illustration below shows this for a pipe. Set the Properties on Flowsheet option to Show, you can also set the anchor position (Alignment) and the font size and color you wish to use.

When you have done this click on the Properties button and select the properties you wish to show by clicking the nodes of the property tree on or off. This is illustrated below.

Make sure the Flowsheet Show button is down as this turns on or off all properties at the flowsheet level.

If you follow the above instructions you should see something like the flowsheet below. Open up the example file shown in the caption of the window below to see this in a QA example.

Results on flowsheet


Showing node and pipe numbers

Each element on the flowsheet has a unique number assigned by FluidFlow. You cannot change the number that FluidFlow assigns, however you can use the Unique Name field that is common to all components to enter your own numbers or descriptions.

The numbering convention used by FluidFlow is that nodes are numbered from 1 upwards and pipes are numbered from -1 downwards. This means nodes always have positive numbers and pipes always have negative numbers. Other flowsheet elements such as text do not have numbers.

To decide if you wish to show the numbers assigned by FluidFlow on the flowsheet, toggle to the on or off position the following buttons (icons are shown below) which can be found on the flowsheet toolbar.

Flowsheet showing numbers


Showing unique descriptive text

Each component has a field called Unique Name, available via the Input Inspector, that you can use to uniquely identify that component.

You can use your own numbering system, a combination of numbers and letters, or whatever you wish. You can later access or find each component based on the unique name you have given to the component.

This name can also be displayed or hidden on the flowsheet. To display or hide the unique name toggle the button (icon shown below). This button is found on the flowsheet toolbar.


Quick Toggle between Input Inspector and Results

There is a useful shortcut that can quickly toggle between the Input Inspector (Input Page of the Data Palette) and the results (Result Page of the Data Palette). To make this use the Ctrl key and a left mouse click together. You must have a flowsheet element selected in order for this toggle to work.


Rotating a component

To rotate a component (or a number of components) either:

§Select the component(s) and use the Ctrl Key AND the "R" key together.

§Select the component(s), right mouse-click and select Rotate Node (See Figure 1).

Figure 1: Rotate Node.

You can rotate a group of components on the flowsheet if more than one flowsheet element is selected. See the flowsheet section on multi-selections for information on how to make multiple node and pipe selections.

When the flowsheet is set up in orthogonal mode, you can rotate components through steps of 90o. If you have the flowsheet set up in isometric mode, components can be rotated through 30o steps.


Templates

From v3.3 onwards, you can generate template files which you can insert onto other project files. If you have for example, a standard pump or valve station which you would tend to use frequently, you can create a template of these stations for insertion into future projects.

To create a template, create a model of the pump or valve station on a new flowsheet and then select: File | Save As Template. This template can then be inserted into any new or existing project you are working on by selecting: File | Insert Template and then select your template from those you have generated/saved.

Figure 1 below shows a part-plan of a model which has been developed and now simply needs a pump station added upstream of the open pipe node 1 to complete the system. We have created a new Pump Station template file and as such, we can insert this template into the model to complete the system connectivity.

Figure 1: Part-Plan of Piping System.

Figure 2 shows the above model with the new pump station template file added to the flowsheet (File | Insert Template). Now all we need to do is drag the open pipe node 17 onto node 1 to complete the model connectivity.

Figure 2: Part-Plan of Piping System with Pump Station Template added.

Figure 3 shows the completed model with the new pump station template connected. Note, when connecting two open pipe nodes, FluidFlow automatically fits a bend (Node 1 in Figure 3). You may wish to delete or change the bend to the relevant node type depending on the requirements of your specific project. You can quickly make a change by right mouse-clicking on the node and selecting Change Component. You then simply choose the required component from the drop-down list provided.

Figure 3: Part-Plan of Piping System with Pump Station Template connected.

The "Templates" files can be located at: "[FluidFlow3 folder]\Templates".

Editing a Template

If you have already saved a template file which you subsequently wish to edit, we recommend inserting the relevant template file onto a new flowsheet, completing the edit, select "Save As" giving the same file name as the template meaning the original file is overwritten.


Drag & Drop

From v3.3 onwards, components can be dragged across the flowsheet and inserted into either a pipe or component. Figures 1 & 2 below show how the open pipe node (node 12) is dragged across the flowsheet and inserted into the model in the location of bend node 9.

Note, When the open pipe is added to bend 9, FluidFlow automatically fits a tee junction to the model. In this case, you would be required to enter the relevant data for the tee junctions, i.e., Pressure Loss Model, Branch Pipe, etc.

Drag & Drop Fig 11

Figure 1: Model before Node 12 is dragged to Bend 9.

Drag & Drop Fig 2

Figure 2: Model after Node 12 is dragged to Bend 9.

You can also drag nodes to insert into pipes. Using the above model, we have dragged the open pipe node 12 and dropped it onto a pipe in the network. As you can see in Figure 3, FluidFlow has automatically fitted a tee junction to the model.

Drag & Drop Fig 3

Figure 3: Dragging & inserting a node onto a pipe.

Note, nodes can only be dragged and inserted onto pipes or fittings where connectivity would permit such a case. For example, we cannot drag an open pipe node and add it to a valve or pump, etc., which already has two pipe connections.


Reposition nodes/model

Navigation: User Interface > Flowsheet > Operations >

Return to chapter overview

Repositioning node groups/model on flowsheet

This section of the Help file discusses how to move or re-position a model or specific group of nodes which make up part of a model. It also describes the recommended approach to positioning a model on the flowsheet.

Model Positioning on the Flowsheet.

When creating a new model, it is recommended that you use the top left corner of the flowsheet as an arbitrary x, y axis. Figure 1 outlines the recommended positioning of a model in orthogonal layout. Note, this approach should be implemented at all times as part of any model-build as it is linked to the reporting functionality.

Model Position - Ortho

Figure 1: Positioning of a Model in Orthogonal Mode.

Occasionally when we expand a model, we need to reposition nodes or indeed, reposition the entire model on the flowsheet. The steps required to complete this task are outlined below:

Moving a Node or specific group of nodes.

The first thing to note is that you cannot reposition a model by selecting a pipe node on the flowsheet. We must select a boundary node or a "fitting" (junction, valve, booster, orifice plate, general resistance, control valve, heat exchanger, etc.). You can actually select a group of nodes on the flowsheet by holding the SHIFT key and left mouse clicking on the desired node group on the flowsheet. Once the required node group has been selected, you can then left mouse-click on any one of them and while holding the left mouse button, drag the node group to the new position.

Figure 2 shows how we have selected the first five nodes in the system. We can then select any of these five nodes and while holding the left mouse button, drag this node group to the new location (Figure 3).

Move Node Group 1

Figure 2: Move a Node Group - Part 1.

Figure 3 shows the newly positioned node group.

Move Node Group 2

Figure 3: Move a Node Group - Part 2.

Moving or repositioning the entire Model.

There are two approaches you can take as described below.

Approach 1

1. Select: Edit | Select | Select Nodes. All nodes will now be highlighted on the flowsheet (except pipes).

2. Left mouse-click on any ONE of the highlighted nodes and drag the entire model to the desired location.

Approach 2

1. Select "Mark Rectangular Area" ( mark rectangular area) from the flowsheet toolbar (to the left of the flowsheet).

2. Left mouse-click at a desired start point to the top-left of the model drag the selector across the model to the bottom-right location taking care to ensure all model components are captured within the rectangular area shown. There is no need to hold the left mouse button during this step.

3. Release the left mouse button when you reach the bottom-right location. You will now see all elements within the rectangular area are selected (pipes included).

4. Left mouse-click on any ONE of the highlighted nodes (not pipes) and drag the entire model to the desired location.

Note, if you are working on a large-scale model, you may need to zoom out to allow you to capture the entire model using the "Mark Rectangular Area" function. Zooming out can also help with dragging the model to the new position on the flowsheet.

In any event, the model should always be positioned such that it is positioned from the top left corner of the flowsheet as outlined at the top of this page.


Menus

FluidFlow provides the following menu system:

Menus | Description
File | Use the File menu to open, save, close, preview, and email new or existing FluidFlow files.
Edit | Use the Edit menu commands to manipulate nodes and pipes (components) on the current flowsheet.
View | Use the View menu commands to display or hide different elements of the FluidFlow environment.
Database | Use the Database menu commands to add, edit, and delete component data.
Options | Use the Options menu commands to customize the FluidFlow environment.
Tools | Use the Tools menu to solve the current network and to access extra (user-defined) tools.
Windows | Use the Window menu to manage the layout of open Flowsheets.
Help | Use the Help menu to access the online Help system, which provides information on all aspects of FluidFlow.


File Menu

Use the File menu to open, save, close, preview, and email new or existing FluidFlow files.

File Commands | Description
New (Ctrl+N) | Create a new empty and untitled flowsheet file.
Open... (Ctrl+O) | Display the Open dialog for loading an existing file. Files can be opened in ".FF3", ".FFL", ".FFG", or ".JSON" formats.
Reopen | Display a menu containing a list of the most recently used files.
Reopen | MRU Files List | List of most recently used files. Clicking on a file will reopen it.
Reopen | More... | Display the Reopen File dialog which contains the complete history of files opened.
Reopen | Clear All | Clear the contents of the MRU Files List.
Close | Close the current file.
Close All | Close all open files.
Save (Ctrl+S) | Save the current file using its current name. If the file is untitled then this command behaves as Save As.
Save As... (Shift+Ctrl+S) | Save the current file using a new name. Files can be saved in ".FF3" or ".JSON" formats.
Save All | Save all open files.
Print Content... | Specify the different sections that will be included in the printout.
Print Preview... | Preview the current file before printing.
Templates | Display a menu containing a list of the most recently used template files.
Insert Template | Display the "Insert FluidFlow Template" dialog for loading an existing template file.
Save As Template | Save the current file to the "Templates" folder using a new name.
Save Selected As Template | Save only the nodes selected on the current file to the "Templates" folder using a new name.
Excel | Excel Content | Display the "Export Options" dialog.
Excel | Write to Excel | Export the file data in Microsoft Excel format.
Excel | Read from Excel | Read-in data from an Excel file which has been exported using the above step. Note, when we write a network file to Excel, users can edit "input" data. This data can then be read-in to the FluidFlow network. The input data on the Data Palette will be updated accordingly.
Export | Display a menu containing available Export formats.
Send To | Display a menu containing a list of email addresses to which the current file can be emailed.
Send To | FluidFlow Support... | Email the current file (and optionally DATA folder) to FluidFlow Support.
Send To | Mail Recipient... | Email the current file to an unspecified recipient.
Send To | Recipients List | List of all available email recipients.
Send To | Customize... | Display the Customize Send To Recipients dialog.
Project Description... | Display the Project Description dialog to enter file-specific information, e.g., author, company, etc.
To Do List... | Display the To Do List dialog.
Bill Of Materials... | Display the Bill of Materials dialog.
Exit (Alt+F4) | Close all open files and exit FluidFlow.


Edit Menu

Use the Edit menu commands to manipulate nodes and pipes (elements) on the current flowsheet.

Edit Commands | Description
Undo (Ctrl+Z) | Undo the last flowsheet command.
Cut (Ctrl+X) | Cut the selected element(s) to the Clipboard.
Copy (Ctrl+C) | Copy the selected element(s) to the Clipboard.
Paste (Ctrl+V) | Paste the Clipboard contents onto the flowsheet.
Delete (Ctrl+Del) | Delete the selected element(s).
Clear Network | Clear all the contents of the flowsheet.
Select | Display a menu that allows you to select all the elements on the flowsheet, or all the nodes, pipes, or text.
Select | Select All | Select all elements on the flowsheet.
Select | Select Nodes | Select all nodes on the flowsheet.
Select | Select Pipes | Select all pipes on the flowsheet.
Select | Select Text | Select all text on the flowsheet.
Copy Inputs | Copy the selected element's input properties to the Clipboard.
Paste Inputs... | Paste the last copied input properties from the Clipboard into the selected element(s). A dialog of the available properties is displayed to allow you to select specific properties. (Press the Shift key to bypass the dialog.)
Change Component… | Display the Change Component dialog to modify the element's component type.
Rotate Node | Rotate the selected node(s).
Find… (Ctrl+F) | Display the Find dialog to search the flowsheet for a specified element.


View Menu

Use the View menu commands to display or hide different elements of the FluidFlow environment.

View Commands | Description
Data Palette | Show or hide the Data Palette.
Components Palette | Show or hide the Component Palette.
Components Bar | Show or hide the Component Bar.
Messages | Show or hide the Messages page on the Data Palette.
Results | Show or hide the Results page on the Data Palette.
Chart | Show or hide the Chart page on the Data Palette.
Components List | Show or hide the Components List page on the Data Palette.
Calculation Watch | Show or hide the Calculation Watch page on the Data Palette.
Scripting | Show or hide the Scripting page. (This menu item will only be available when the Scripting Module is active.)
Data Report | Display a report for the current network. The report can be customized to display Input or Results data or a combination of both.
Toolbars | Display a menu with a list of all available toolbars and allows you to show or hide each, and to customize the contents of each.
Style | Display a menu allowing you to change the user interface style to Office, XP, or Flat.
Reset Menus | Reset all menus to the default configuration.
Reset Layout | Reset the layout of the FluidFlow user interface to the default configuration.


Database Menu

Use the Database menu commands to add, edit, and delete component data.

Database Commands | Description
Pipes… | Display the Database Editor dialog for Pipes.
Boundaries… | Display the Database Editor dialog for Boundaries.
Boosters… | Display the Database Editor dialog for Boosters.
Valves… | Display the Database Editor dialog for Valves.
Controllers… | Display the Database Editor dialog for Control Valves.
Check Valves… | Display the Database Editor dialog for Check Valves.
Gas Regulators... | Display the Database Editor dialog for Gas Regulators.
General Resistances… | Display the Database Editor dialog for General Resistances.
Size Change… | Display the Size Change Editor dialog.
Relief Devices… | Display the Database Editor dialog for Relief Devices.
Fluids… | Display the Fluid Editor dialog.
Solids… | Display the Solid Editor dialog.
Manufacturers… | Display the Database List Editor dialog for Manufacturers.
Materials… | Display the Database List Editor dialog for Materials.
Applications… | Display the Database List Editor dialog for Applications.
Insulation Materials Thermal Conductivity… | Display the Insulation Materials Editor dialog.
Pipe Materials & Thermal Conductivity... | Display the Pipe Thermal Conductivity Editor dialog.
Pipe Roughness… | Display the Pipe Roughness Editor dialog.
Pipe Sizing Data… | Display the Sizing Data Editor dialog.
Pipe Scaling… | Display the Pipe Scaling Editor dialog.
Data | Display a menu allowing you to change Backup and Restore Data.
Data | Backup Data… | This makes a backup of the contents of the current Data Folder. When prompted, select a location to backup your DATA folder to.
Data | Restore Data… | This restores any previously made backup. Restoration is made to the currently connected database. This means you will overwrite the currently connected database so make sure this is what you intend before using this option.
Refresh Flowsheet Data | Refresh the node/pipe equipment data with the most up-to-date records from the underlying database.
Connections… | Display the Data Connections dialog.
Configure Users… | (FluidFlow Network version only.)


Options Menu

Use the Options menu commands to customize the FluidFlow environment.

Options Commands | Description
Calculation… (F2) | Display the Calculation Options dialog.
Flowsheet… (F3) | Display the Flowsheet Options dialog.
Environment | Display a menu with options to customize the FluidFlow environment.
Environment | Open Environment… | Display the Open Environment dialog to open an existing environment set.
Environment | Save Environment… | Display the Save Environment dialog to save the current environment (units, etc.) under a new or the current name.
Environment | Component Defaults… (F4) | Display the Component Defaults dialog to enter default values for components.
Environment | Excel Columns… (F5) | Display the Excel Properties dialog to specify the columns (component fields) to be visible when exporting to Excel format.
Environment | Fly By Options… (F6) | Display the Fly By Properties dialog to specify the fields (on a per-component basis) that will be displayed in Fly Bys.
Environment | Print Columns… (F7) | Display the Print Properties dialog to specify the fields (on a per-component basis) that will be previewed or printed.
Environment | Visible Results… (F8) | Display the Visible Results dialog to specify the result rows that will be displayed in the Results page of the Data Palette.
Environment | Result Units… (F9) | Display the Result Units dialog to specify the units to be used in the Results page of the Data Palette.
Warnings and Hints… | Display the Warning And Hints dialog to specify the Warnings and Hints to be displayed when the network is solved.
Languages | Display a menu containing all available Languages.
Languages | Language List | A menu of all languages, clicking on one will translate the application.
Change Password... | Allows a network user to change their current password.


Tools Menu

Use the Tools menu to solve the current network and to access extra (user-defined) tools.

Tools Commands | Description
Calculate (Ctrl+F8) | Solve the current network.
Stop Calculation (Ctrl+F9) | Stop a calculation that is under way.
Configure Tools... | Display the Configure Tools dialog to modify the available tools.
Multi Calc... | Display the Multi Calc dialog which allows you to specify and run multiple calculations, changing values and recording results.
Back Calc Input... | Display the Back Calc Input dialog, used to determine an input value that might give a desired result.
Color Coding... | Display the Color Coding dialog which allows you to apply color coding/grading to pipes based on pressures, velocity, or flow rates.
Composite Chart Setup... | Display the composite plot dialog which allows you to plot HGL/EGL and composite pump performance curves.
Scripts | Display the list of pre-written scripts which can be applied to a given model open on the flowsheet.
Refresh List | Updates the Scripts list from the [FluidFlow3 Installation]\Scripts
Run Script... | Prompts you to select a script file to execute.
Equipment Performance | Display a menu that allows you to select the Control Valve or Pump Performance Selector Tool.
Equipment Performance | Control Valve Performance | Display the Control Valve Performance Viewer Dialog.
Equipment Performance | Pump Performance | Display the Pump Performance Viewer Dialog.


Window Menu

Use the Window menu to manage the layout of open Flowsheets.

Window Commands | Description
Tile Horizontally | Arrange the open Flowsheets horizontally.
Tile Vertically | Arrange the open Flowsheets vertically.
Cascade | Display the open Flowsheets one on top of the other.
Window List | List of all open Flowsheets.


Help Menu

Use the Help menu to access the online Help system, which provides information on all aspects of FluidFlow.

Help Commands

Description

Help (F1)

Open the FluidFlow Help Topics.

Quick Start

Provide a guide tour of FluidFlow and its features.

Examples

Displays a list of example .FF3 files.

Quality Assurance

Opens the FluidFlow Quality Assurance Policy Document.

Resources

Display the FluidFlow Resources Page. This page is particularly useful to new users and provides information on how to access the Design Examples & Getting Started series of tutorial videos.

Contact details for Sales, Product Technical Support & Engineering/Modelling Consultancy are also provided.

FluidFlow Online

Launch your Web Browser to the FluidFlowInfo website.

Check For Updates

Check the FluidFlowInfo website for available updates (program and data).

Email Support

Launch your email client with the support@fluidflowinfo.com address.

Email Bug Report

Launch your email client with the support@fluidflowinfo.com address.

Activate FluidFlow…

Display the Activate FluidFlow Dialog to allow you to register FluidFlow and activate the different modules available (e.g., Liquid Calculation, Gas Calculation).

License Manager...

Start the License Manager application (FluidFlow3LM.EXE), located in the same folder as FluidFlow (PSFF.EXE).

Login Named User...

Displays the Login Dialog to allow you to use a "Named User" account for the FluidFlow license.

Logout Named User

Logs out from the current "Named User" account, returning the license to a "Non-Calc" mode.

About…

Display copyright and version information for FluidFlow in the About dialog.


Dialogs

Through the various dialogs you can input data into the databases, control how the program solves a model, determine the visibility of results, etc. Some dialogs simply provide information; some require active input from the user. Dialogs can be accessed via one of three methods (not all applicable in all cases):

§ From a menu option

§ Right-mouse click on the flowsheet or on the Data Palette

§ Function keys

Function Key dialog shortcuts:

Hot Key | Dialog
F2 | Calculation Options
F3 | Flowsheet Options
F4 | Component Defaults
F5 | Excel Properties
F6 | Flyby Properties
F7 | Print and Export Properties
F8 | Visible Results
F9 | Result Units


About Dialog

This dialog displays information about the current version of FluidFlow, contact information for Flite Software, and a description of the registered user's available modules (e.g., Liquid Calculation, Gas Calculation.)

To display the About Dialog:

§Select the Help | About menu item.

About Dialog
FluidFlow | Displays the FluidFlow Version No., the application's Release Date, the user's Registration ID, and the user's Product ID. If the Registration ID is 'Evaluation Copy' then you need to register your copy of FluidFlow (using the Help | Activate FluidFlow menu item) before you can calculate/solve any FluidFlow networks.
Contact | Displays Website, Email, Telephone, Fax, and Mail address information for contacting Flite Software Ltd.
Modules | Lists all possible FluidFlow modules. Only those with a 'tick mark' against them will be available in your copy of FluidFlow. To upgrade your version of FluidFlow to have more modules you need to use the Help | Activate FluidFlow menu item.
Info | A summary of the setup/installation information that will be useful when contacting support@fluidflowinfo.com.


Activate FluidFlow Dialog

The Activate FluidFlow Dialog allows you to purchase and register your evaluation copy of FluidFlow, or to upgrade your existing registered copy to include more modules.

To display the Activate FluidFlow Dialog:

§Select the Help | Activate FluidFlow menu item.

Activate FluidFlow Dialog

Activate

Displays the current Registration ID, Product ID, and available Modules. See the 'How To Register' page on the different means of registering. Once Flite provides you with an 'Activation Code' enter it in the box provided and click 'Activate FluidFlow'.

Transfer License

How To Register

Displays the different methods of registering FluidFlow. You can:

§Ring Flite on Int+44 2871 279227. You will need to quote your Product ID, specify a username, and the modules you require.

§Email support@fluidflowinfo.com. You will need to include your Product ID, a username, and the modules you require.

Note: Your Product Id is displayed on the 'Activate' page, as well as in the text of the 'How To Register'.


Back Calc Input Dialog

The 'Back Calc Input' functionality is used to attempt to determine an input value for a specific element's property that would achieve a desired result in another element.

This dialog allows you to run a calculation, changing the value of a single property for one element in each iteration, and saving the accumulated results to a spreadsheet, highlighting the input/result combination that most closely matches your required value. Additionally, you can view the progress of the calculation in a chart.

To display the Back Calc Input Dialog:

§Select the Tools | Back Calc Input menu item.

Toolbar Buttons

·Use the toolbar buttons to open an existing FBC (FluidFlow Back Calc) file; save the values you're working on to a file; and refresh/update the Element and Property drop-downs based on the currently open flowsheet.

·The 'Run' button will execute the "back calc", and on completion update the Closest Match match field, generate a report, and refresh the chart. (Note: Some models may take some time to complete if there are a large number of steps/runs to perform.)

How it Works

Select your "Target" and "Source" values. The Target is the element and (result) property that you want the "back calc" process to achieve. The Source is the element and (input) property that you'll change to try to achieve the target.

Field | Description
Target | Element | Select the Node/Pipe which you want to evaluate a property value for. When you select an element, the Result Property drop-down is updated to reflect the available properties for that particular element.
Target | Result Property | Select the property that you want to test for. When you select from the drop-down, the Value "units" field is updated to reflect the currently selected result units for that property (if applicable).
Target | Value | Enter the Value you want to achieve. This will be in the result units applicable to the "Result Property" you've selected.
Source | Element | Select the Node/Pipe which you want to base the "back calculation" on.
Source | Input Property | Select the Input Editor property for the Element that you want to change.
Source | Start/End/Change | Enter the value to start with, the value to end with, and the increment/decrement change you want to change the value by in each iteration. When you run the back calc, it will initialise the input property to the Start value, increment/decrement by the Change value, and calculate until the End value is reached.
Closest Match | This is the value the Input Property should be set to to come nearest to matching the required Result Property value of the Target Element.

Report Results

This records the input and result values for each calculation in the 'Back Calc'. The Closest Match - the input property value and the calculated result property value - is highlighted in red.

Use the toolbar buttons to save the report results to an XLSX file, or to preview it (for printing) in a spreadsheet.

Chart Results

This is a visual representation of the Report spreadsheet.

Use the toolbar buttons to save the chart to a JSON-format file; to insert the chart into the current flowsheet as a Chart Object; and to toggle the "Closest Match" data label.


Bill Of Materials Dialog

Use this dialog to view and preview the Bill of Materials (BOM).

The BOM is organized first by Nodes and then Pipes. For each type of Node the quantity in the network is calculated and displayed; for each type of Pipe the cumulative length is calculated and displayed.

To display the Bill Of Materials Dialog:

§Select the File | Bill Of Materials menu item.

Bill Of Materials Dialog
BOM List | Lists the quantities (or lengths) of all nodes and pipes in the current network.
Preview | Preview the BOM before printing.

Related Information

The units of length displayed in the BOM reflect those specified in the Results Units dialog.


Calculation Options Dialog

This dialog displays information about the current network, and allows you to specify calculation settings for the current network and globally for all networks.

To display the Calculation Options Dialog:

§Select the Options | Calculation menu item.

§Right mouse-click on the Data Palette to display a context menu and select 'Calculation...'.

§Press F2.

This dialog has up to seven tabbed pages depending on the modules in your license.

Current Network

The tab Current Network shows read-only information about the current network file you have open.

Convergence Criteria

The Convergence Criteria tab allows you to adjust the calculation convergence criteria. Warning: Unless you have a valid reason for doing so, it is not recommended that you adjust these settings. At the limit the solver can exit before full convergence has occurred, this means inaccurate answers. You can always talk to our support team (support@fluidflowinfo.com) if you have a network that is difficult to converge. The Convergence Criteria tab:

Global Settings

The Global Settings tabbed page shows the settings that are global to all calculations made by FluidFlow. This tab allows you to set global constants used in the calculation. Atmospheric pressure is defined as 101325.00 Pa a. It should be noted that a value of zero should not be used for atmospheric pressure as this will lead to convergence issues. In general, it is not recommended that you adjust the value of 101325.00 Pa a.

Note, you can allow the software to adjust atmospheric pressure at boundaries and pressure controllers for elevation. When selected, FluidFlow allows for an appropriate height correction to gauge pressure at a given elevation.

You can also choose include other settings for your network as follows:

Inclusions

Include Viscosity Correction Factor for Centrifugal Pumps:

If you are modelling a liquid with a viscosity higher than 4.3 centistokes, FluidFlow makes a correction to the performance data according to the method described in the Hydraulic Institute (HI) Standards. This correction will only occur if the option has been enabled from the "Global Settings Tab" of the Calculation Options dialog AND the fluid viscosity is within the range of 4.3 - 3300 cSt as outlined in the Hydraulic Institute (HI) Standards.

Include (Implicit) Reducers/Expanders for Control Valves:

If you are modelling a system which includes control valves and you insert a control valve which has connection sizes which are smaller/larger than the connecting pipes, FluidFlow will automatically include a reducer/expander as necessary. This will only occur if this option has been enabled from the "Global Settings Tab".

Convergence Aids

Automatically close sprinklers, open pipes, open resistances on backflow: When solving a network, FluidFlow will initialize all boundary pressures in the system. If the system includes a sprinkler, open pipe or open resistance node, the pressure at these nodes is atmospheric and flow from these nodes can only occur out of the network.

If however there happens to be an error in the model arising from data entry, etc., in solving the conservation of mass, energy and momentum equations, there can be conditions whereby the pressure (1 ATM) at these nodes is higher than at other points in the system. This would indicate that flow would therefore arise from these nodes when in reality, we know that this is not the case.

If we therefore enable this option, we will get a warning for the respective boundary node where the likelihood of backflow has arisen and flow in that direction will be prevented from occurring.

Automatically use "Ignore Pressure Loss" status for unstable tee junctions: If we are modelling a system where we encounter an unstable condition at a tee junction, the software will revert to ignoring the pressure loss for the respective tee junction if this option is enabled.

Heat Transfer - Pipe Heat Loss Outside Coefficient

Users can choose from two options to estimate the outside coefficient in pipe heat loss/gain calculations: Option 1) ASTM Standard C680 Correlation and Option 2) Use VDI Heat Atlas Correlations.

The Global Settings tab:

Gas

The Gas tab allows you to set either STP (Standard Temperature and Pressure 15°C and 101325 Pa) or NTP (Normal Temperature and Pressure 0°C and 101325 Pa) for gas volume reference conditions. It is essential that careful consideration be given to the correct reference gas volume flow units prior to building your gas model.

You can also choose from three different options for the inclusion of the Joule Thomson effect in your gas calculations:

1.Include Joule Thomson Effect in "Ignore Heat Loss/Gain" model. This option is switched ON by default which means the J-T effect is included in gas calculations where the Heat Loss Model for a pipe has been set to "Ignore Heat Loss/Gain" on the Data Palette.

2.Include Joule Thomson Effect in "Fixed Transfer Rate" model. This option is switched OFF by default which means the J-T effect is excluded in gas calculations where the Heat Loss Model for a pipe has been set to "Fixed Transfer Rate" on the Data Palette.

3.Include Joule Thomson Effect in "Do Heat Loss Calculation" model. This option is switched OFF by default which means the J-T effect is excluded in gas calculations where the Heat Loss Model for a pipe has been set to "Do Heat Loss Calculation" on the Data Palette.

For gas pipelines with heat loss where condensing may occur, we have two entries we can make:

1.Assume that the pipe has a steam/vapor trap arrangement. This means that if condensing occurs in the pipeline, all liquid is removed and the vapor leaves the pipe at saturated conditions. This is reflected in the calculated results for the outlet conditions of the pipeline.

2.Assume that the pipe has NO steam/vapor trap arrangement. This means that if condensing occurs, a two-phase mixture will leave the pipe. This is also reflected in the calculated results for the outlet conditions of the pipeline.

The Gas tab:

Two Phase

The Two Phase page allows you to select the two phase pressure loss correlation. Available methods are shown below:

Slurry

The Slurry page allows you to set pressure loss correlations and constant values to be used in slurry flow calculations.

Pulp & Paper Stock

The Pulp & Paper Stock page allows you to set pressure loss correlations to be used in pulp and paper stock flow calculations.


Change Component Dialog

This dialog allows you to change the type/kind of the selected component(s) on the currently open flowsheet.

To display the Change Component Dialog:

§Select the Edit | Change Component menu item.

§Select an element, right-mouse click to display a context menu and select 'Change Component'.

Keep all common property values is only available for nodes. Common properties depend on the node type. For example, elevation is common to all nodes. If the "Keep all common property values" is checked elevations will be copied when you change components. If this box is unchecked the default property values are used instead. For pipes, the "Keep all common property values" only copies pipe length - all other pipe properties are reset to default for that material.

Related Information

You can only change a component to another of appropriate characteristics. You can search for a component by typing its name in the search field at the top of the dialog.


Chart Properties Dialog

The 'Chart Properties' dialog is displayed when you select 'Properties' from the 'Input Editor' for a Chart Object.

Use this to configure and populate your chart data. You can modify the look (title, font, etc.) of 3 axes - bottom, left, and right - and add any number of series of XY data points.

Use the 'Load Chart Properties' and 'Save Chart Properties' buttons (at the bottom-left) to store and retrieve charts in JSON format.

The 'Chart Image' page provides a preview of what the chart will look like with the current settings/data applied.

The 'Series Properties' dialog is displayed when you add/edit a series in the 'Chart Properties' dialog. There are currently two series kinds - Line and Pointer - you can add. For each series you can specify some visual aspects (color, width) and add/edit XY data.

Use the 'Load Series Properties' and 'Save Series Properties' buttons (at the bottom-left) to store and retrieve chart series in JSON format.

The 'Series XY Data' dialog is displayed when you click the '...' field of the 'Data' input in the 'Series Properties' dialog. Within this dialog you can add, edit, load, and save the XY data that makes up a chart series.

Use the 'Load from CSV' and 'Save to CSV' buttons (in the bottom grid toolbar) to store and retrieve XY data in comma-separated-value text format.


Color Coding Dialog

This dialog allows you to color-code pipes based on multiple value ranges for flow, pressure, or velocity.

To display the Color Coding Dialog:

§Select the Tools | Color Coding menu item.

When a model has been solved, you can then color-code all pipes in the model based on flow rate, pressure, or velocity as shown in Figure 1. You can also choose the flow, pressure, or velocity units applicable to your modelling case or color coding criteria (Figure 2).

color coding default

Figure 1: Color Coding Form - Default.

Figure 2 shows how the color coding function has been set to color-grade the pipes based on different flow rate conditions (0.2 m3/h in black, 2 m3/h in maroon, 5 m3/h in red and 10 m3/h in aqua). Once you have set all your conditions, select the "Refresh Flowsheet" button to apply the color coding conditions. You will then see the pipes on the flowsheet have been color graded based on the criteria defined in Figure 2.

color coding flow

Figure 2: Color Coding set to grade pipe color based on flow rate.

Notes:

1. You can use the down arrow-key to create a new entry or select the green "plus" button on the bottom left of the "Color Coding" dialog to create a new entry field for your design condition.

2. Select the red "minus" button on the bottom left of the "Color Coding" dialog to delete an existing entry for your design condition.

Related Information

It can be helpful to increase the "draw thickness" for all pipes in the network. This gives the color coding much more visual impact. The quickest method of increasing pipe "draw thickness" is to:

§Select the 'Edit | Select | Select Pipes' menu item.

§While all pipes on the flowsheet are highlighted, select the INPUT tab of the Data Palette and set "draw thickness" to 3.

All pipes will now appear thicker on the flowsheet. Click anywhere on the flowsheet to remove the pipe selection.

Figure 3 below gives an overview of pipe color coding, in this case based on flow.

Figure 3: Color Coded Model.


Component Defaults Dialog

The Component Defaults Dialog allows you to specify what the default input values should be for every different type of component.

To display the Component Defaults Dialog:

§Select the Options | Environment | Component Defaults menu item.

§Right-mouse click on the Flowsheet or on the Data Palette to display a context menu and select 'Component Defaults'.

§Press F4.

Related Information

When developing a model, FluidFlow copies element data from the default values. Thus, if the next 10 pipes are to be all 4" Schedule 40 steel, 10m long, then setting the default to this makes for easy and accurate data entry. The default can be changed at any time without affecting elements already placed on the flowsheet, and the default values of an element can always be edited later.

Default values can be set for every element available within FluidFlow. Whilst this may appear initially tedious, the default settings can be saved to the user-specified Environment.


Configure Tools Dialog

Use this dialog to add programs to, delete programs from, or edit programs on the Tools menu. These programs appear at the bottom of the Tools menu.

To display the Configure Tools Dialog:

§Select the Tools | Configure Tools menu item.

Configure Tools Dialog
Tools List | Lists all the programs installed on the Tools menu.
Add | Displays the Tool Properties dialog, where you can specify a menu name, path, working directory, and startup parameters for the program.
Edit | Displays the Tool Properties dialog, where you can modify the current programs properties.
Delete | Removes the currently selected program from the Tools menu.
Move Up | Moves the currently selected program up one row in the list.
Move Down | Moves the currently selected program down one row in the list.

Note: Although the term "programs" is used here Tools can be Executables, Excel Spreadsheets, Word Documents, HTML files, or any other type of file that Windows has a file type associated with it.

To Add a Program to the Tools Menu

1. Click 'Add' to display the Tool Properties dialog.

2. Specify a title for the program. The title you specify will be listed on the Tools menu.

3. Specify the path to the program, or click the Folder button to select it from your computer folders.

4. Specify the working directory for the program, if necessary.

5. Specify the startup parameters for the program, if necessary.

6. Click OK to close the Tool Properties dialog.

The new program is added to the Tools list.

To Delete a Program from the Tools Menu

1. Select the program to delete, and click 'Delete'.

2. You are prompted to confirm the deletion. Click 'OK'.

The program is removed and the Tools list is updated.

To Change a Program on the Tools Menu

1. Select the program to change, and click 'Edit'.

2. The Tool Properties dialog is displayed with properties of the currently selected program.

3. Make your changes as required and click 'OK'.

The Tools list is updated with the new properties of the program.


Customize Send To Recipients Dialog

Use this dialog to add recipients to, delete recipients from, or edit recipients on the File | Send To | Recipients List menu.

To display the Customize Send To Recipients Dialog:

§Select the File | Send To | Customize menu item.

Customize Send To Recipients Dialog
Recipients List | Lists all the available email recipients.
Add | Displays the Email Properties dialog, where you can specify a name and email address for the recipient.
Edit | Displays the Email Properties dialog, where you can modify the current recipient's properties.
Delete | Removes the currently selected recipient.
Move Up | Moves the currently selected recipient up one row in the list.
Move Down | Moves the currently selected recipient down one row in the list.

To Add a Recipient to the List

1. Click 'Add' to display the Email Properties dialog.

2. Specify a Display Name for the 'Send To' recipient. The name you specify will be listed on the File | Send To | Recipients List menu.

3. Specify the email address of the recipient.

4. Click OK to close the Email Properties dialog.

The new recipient is added to the Recipients List.

To Delete a Recipient from the List

1. Select the recipient to delete, and click 'Delete'.

2. You are prompted to confirm the deletion. Click 'OK'.

The entry is removed and the Recipients List is updated.

To Change a Recipient on the List

1. Select the recipient to change, and click 'Edit'.

2. The Email Properties dialog is displayed with the properties of the currently selected recipient.

3. Make your changes as required and click 'OK'.

The Recipients List is updated with the new properties.


Data Connections Dialog

Use this dialog to specify the location of your DATA folder, which will contain your equipment items, fluids, etc. You can swap between different DATA folders, and optionally open a folder as "Read-Only". When opened as "Read-Only" you will not be able to make any changes to your equipment/fluids, but will still be able to view them and their properties. We recommend this option when using FluidFlow over a slow LAN/WAN and you have no need to modify any DATA.


Email Properties Dialog

Use this dialog to specify a name and email address for an email recipient that will be listed in the File | Send To | Recipients List menu.


Excel Properties Dialog

This dialog allows you to specify the columns (component fields) to be visible when exporting to Excel format.

To display the Excel Properties Dialog:

§Select the Options | Environment | Excel Columns menu item.

§Press F5.

Related Information

This layout and functionality of this dialog is based on the Print and Export Properties dialog.


Flowsheet Options Dialog

The Flowsheet Options dialog has several pages: General, Elements, Properties on Flowsheet, FlyBys, Graphic Objects, and Miscellaneous, all of which are used to configure the flowsheet display and how elements (nodes, pipes, and graphic objects) are drawn on it.

General

Scale, Grid and Snap Options can be pre-set here but subsequently altered using the toolbar or the flowsheet toolbar.

Split Pipe on Insertion: This determines the effect of joining a new pipe to an existing pipe to create a tee or adding a component to a pipe such as a valve. Either the pipe will split in two equal lengths, each length having the same properties as the original pipe or the original length will be retained and a new pipe added - the new pipe copied from the default setting.

Elements

Show (Hide) FlyBy Properties: Can be activated from here or from the Flowsheet Toolbar.

Show (Hide) Unique Name: Can be activated from here or from the Flowsheet Toolbar.

Show (Hide) Node / Pipe Numbers: Can be activated from here or from the Flowsheet Toolbar.

Show (Hide) Element Properties: Can be activated from here or from the Flowsheet Toolbar.

Properties on Flowsheet

FlyBys

Graphic Objects

Miscellanous


Fluid Editor Dialog

The Fluid Editor dialog allows us to view or edit the physical properties of pre-defined fluids. When adding a new fluid to the database, we can define the data for each of the physical properties as shown below. Note, we can define new fluids as either 1) Pure Newtonian Fluid, 2) Simple Newtonian Liquid, 3) Gas (No Phase Change) and 4) Non-Newtonian Liquid. These options can be viewed in the row titled "Fluid Type".

The physical properties required for the fluid data entry varies depending on which "Fluid Type" option is selected. If you click-through each option you can see the required list being populated based on your selection.

Note: When adding a new fluid to the database, we MUST define ALL minimum properties required in order to model the fluid. When we have completed the data entry for all properties, the LIGHT-BULB icon on the bottom left corner of the Fluid Editor will be illuminated. If the LIGHT-BULB is not illuminated, the fluid will not be available for selection in the model, even though it is saved in the Database.

To display the Fluid Editor Dialog:

§Select the 'Database | Fluids...' menu item.


Fluid Curve Editor Dialog

FluidFlow develops a curve-fit based on the physical property data entry. We need to define a minimum of three coordinate points in order to obtain a valid curve. Once we have defined three data points you will see the curve fit automatically appear on the right hand side. The image below is an illustration of the viscosity curve-fit for SAE 10 Lube Oil.


FlyBy Properties Dialog

This dialog is used to specify the fields (on a per-component basis) that are displayed on the flowsheet by activating the FlyBy option.

To display the FlyBy Properties Dialog:

§Select the Options | Environment | FlyBy Options menu item.

§Press F6.

Related Information

This layout and functionality of this dialog is based on the Print and Export Properties dialog.


Login Named User Dialog

FluidFlow 3.54 introduces a new licensing option - "Named User License" - that allows use of a license stored online, rather than hard-coded to a PC. You will need to have signed up for a "Named User" license and been provided with account details from our sales team before you can start.

A "Named User" license is one not stored on your machine, but is accessible online. You can have both a standard (standalone/network) license and a "Named User" license on the same installation.

How it Works

If you have selected 'Named User (Online)' as your installation kind when installing FluidFlow then the "Login Named User" dialog will be displayed for you on startup.

If you 'Cancel' the "Login Named User" dialog on startup, FluidFlow will start with any other (standalone/trial/non-calc/network) license on your machine.

At any time (and for any installation type) you can also use the 'Help | Login Named User...' menu item to display this dialog to access an online/Named User license.

Once logged in, you can use FluidFlow as normal. To logout and return FluidFlow to running in non-calc mode, select the 'Help | Logout Named User' menu item.

Credentials

To access your Named User license, you need to login with the Email and Password credentials used to register your account.

'Auto-Login on Startup' - when checked this will bypass the dialog and login you in automatically with the saved credentials.

Use the 'Save' button to store the email and password (and Proxy Settings) without logging in. Note, when you login, these credentials and settings will be automatically stored for you without needing to click 'Save'.

(Note: The same credentials - email and password - can be used to access your account on our portal site.)

Settings

The Settings Page is used to enter any proxy information you might need to access the internet. Please contact your IT admin to get your proxy details - server, port, username, and password - if they are needed.

You can use the 'Save' button to store the Proxy Settings (without logging in). Additionally, when you do login, the settings will be automatically stored for you.


Make Mixture Dialog

Users can create fluid mixtures by Mole or Mass %. The image below shows a gas mixture created by Mole % where the individual fluid components have been added and the percentage composition of each defined. Note, when creating a fluid mixture, the Percent Sum must total 100% otherwise you will not be able to model the fluid.

To display the Fluid Mixture Dialog:

§Select the 'Database | Fluids...' menu item and click the 'New Mix' button.

Fluid Mixtures Editor


Minimized Node Icons Dialog

Accessed via the Flowsheet Options dialog, the Minimized Node Icons dialog is used to select which of the node element kinds should be displayed in "minimized" form on the flowsheet:

This functionality is provided to "unclutter" the look of the flowsheet in large models. It can be toggled on/off with the 'Use Minimized Node Icons' option on the Flowsheet Settings Toolbar:


Multi Calc Dialog

This allows you to run multiple calculations, changing the value of a single property for one or more elements in each iteration, and saving the accumulated results to a spreadsheet.

To display the Multi Calc Dialog:

§Select the Tools | Multi Calc menu item.

Toolbar Buttons

·Use the toolbar buttons to create a new FMC (FluidFlow Multi Calc) file; open an existing one; save the current FMC you're working on to a new file name; or import/export individual multi calc records between FMC files.

NOTE: The changes you make to your current FMC are saved automatically when you close the dialog, i.e., you are not prompted to save changes, they are saved automatically.

·The '+', '-', and 'Copy' buttons allow you to add a new multi calc, delete the currently selected one, or to make a copy of the currently selected record.

·You can use the 'Properties' button to specify what properties should be available in the Property to Change drop-down.

·The 'Run' button will execute the currently selected multi calc, updating the status bar at the bottom of the dialog on the progress. (Note: Some models may take some time to complete if there are a large number of runs to perform.)

How it Works

The type of property value change between "multi calc" iterations can be one of four types of Input Source:

Step-wise

This allows you to specify Starting and Ending values, and the number of Steps between these values to take. For example, specifying 1 and 10 for the Start/End values for Elevation, and the number of Steps as 10, means that the calculations will run 10 times, starting at 1, then 2, then 3, etc., up until 10.

Incremental

This is a variation on Step-wise in that you specify the amount to change a property by, from a start value until the end value is reached. Note, you can use this to decrease the value as shown below:

In this example, the Temperature of the selected element is specified to start at 45, and will be decremented by 5 until it reaches 15. This will result in 7 calculation runs where the temperature will be 45, 40, 35, 30, 25, 20, and 15.

User-entered

In this mode, you can specify the different values to set a property to from a list you populate.

You can also specify that the multi calc applies to an element (or elements), as opposed to the currently selected element(s) on your flowsheet. For example in the image below, we are applying a range of values - 140, 150, 160, and 170 - as 4 separate calculations to Node 4 (a centrifugal pump).

Note: When you select 'Specify Element(s)' from Apply To, the list of available elements will be filtered based on what is relevant to the Property to Change field value. For example, in the above, Impeller Diameter is only available for the Pump in the flowsheet, so none of the other nodes/pipes are displayed.

Excel Linked

Here you can specify an Excel file, open it (in the dialog), and select a range of cells that you want to use as the source for your property values.

In the above example we are changing the Operating Speed value of Pump 4 to the values from cells B3 to B7 in the Pump Speed Data.xlsx file. This will run 5 times for 1450, 1550, 2000, 3000, and 3500.

Note: The advantage of this approach over the 'User-entered' is that you can change the values in the underlying spreadsheet and Multi Calc will read from them at runtime.

Report Results

After running the multi calc, you can review the results in the 'Report' tab, as per the image below. The results can be filtered by all available, or on an individual run-basis. Use the toolbar buttons to save the results to an Excel (XLSX) file, or to preview the report in Excel (or the FF3 Previewer.) Additionally, the 'Messages' sheet will contain hints/warnings/errors encountered during each calculation run.


Open Environment Dialog

This dialog is used to select a default or user-defined environment.

To display the Open Environment Dialog:

§Select Options | Environment | Open Environment menu item.

Related Information

An "Environment" contains a range of default or user-defined settings. Many different Environments can be saved, which can then be selected for use with future models.

An Environment contains the following settings:

§Component Defaults for the Input Editor

§Visible Properties in Excel, Reports, Fly-Bys, and the Results List

§Result Display Units


Password Dialog

This dialog is only available in the Network version of FluidFlow. You can use this to change the password associated with your login username.

To display the Password Dialog:

§Select Options | Change Password menu item.


Pipe Roughness Editor Dialog

FluidFlow includes a database of pipe roughness values for different pipe materials.

You can select the material from the top drop-down menu and view the absolute roughness value for the roughness description listed on the left hand side. You can also add new roughness descriptions and values to the database which can be used in your plant simulations.

To display the Pipe Roughness Editor Dialog:

§Select 'Database | Pipe Roughness...' menu item.

Pipe Roughness Editor v3.31


Pipe Scaling Editor Dialog

FluidFlow includes a database of pipe scaling values for different pipe materials.

You can select the material from the top drop-down menu and view the scaling value for the scaling description listed on the left hand side. You can also add new scaling descriptions and values to the database which can be used in your plant simulations.

To display the Pipe Scaling Editor Dialog:

§Select the 'Database | Pipe Scaling...' menu item.

Pipe Scaling Editor


Print and Export Properties Dialog

This dialog is used to specify the fields (on a per-component basis) that will be previewed or printed.

To display this dialog:

§Select the Options | Environment | Print Columns menu item.

§Select the File | Print Content menu item and click the Table button in the Print Options dialog.

§Press F7.

Print and Export Properties Dialog
Components | Lists all available FluidFlow components. Selecting a component will update the 'Results' pane with the fields that are specific to that particular component.
Properties | Displays the Input and Results fields that are available for the currently selected component. A tick mark beside the field name means that it will be displayed in the printout.

Related Information

This dialog serves as a basis for the following menu items:

§ Options | Environment | Excel Properties

§ Options | Environment | Print Options

§ Options | Environment | Fly By Options

§ Options | Environment | Visible Results


Print Properties Dialog

This dialog is used to specify the fields (on a per-component basis) that will be previewed or printed.

To display this dialog:

§Select the Options | Environment | Print Columns menu item.

§Select the File | Print Content menu item and click the Print Columns button in the Print Options dialog.

§Press F7.

Print and Export Properties Dialog
Components | Lists all available FluidFlow components. Selecting a component will update the 'Results' pane with the fields that are specific to that particular component.
Properties | Displays the Input and Results fields that are available for the currently selected component. A tick mark beside the field name means that it will be displayed in the printout.

Related Information

This layout and functionality of this dialog is based on the Print and Export Properties dialog.


Project Description Dialog

To display the Project Description Dialog:

§Select the 'File | Project Description...' menu item.

Project Description v3.31


Reopen File Dialog

We can access recently opened files by using the File Reopen dialog.

To display the Reopen File Dialog:

§Select the 'File | Reopen | More...' menu item.

File Reopen v3.31


Result Units Dialog

This dialog is used to change the units that fields of the Results page and Flowsheet are displayed in.

To display the Result Units Dialog:

§Select the Options | Environment | Result Units menu item.

§Right-mouse click on the Data Palette to display a context menu and select 'Result Units'.

§Press F9.

Result Units Dialog

General

Gas

Solids


Reservoir Connections

This dialog allows you to specify the connection details for all pipes connected to a reservoir.

Reservoir Connections v3.31

For each pipe connection that you have made you can specify the following entries:

Branch Height: This is the height of the pipe take off from the reservoir/vessel base. You should enter the height to the bottom of the pipe.

Height Unit: The unit of length that you have used to specify the branch height.

Entrance Type: This allows you to specify the way that the pipe enters or leaves the vessel/reservoir. Possible values are:

§Ignore Entry/Exit Loss

§Sharp Edged (Kd = 1.0 or 0.5)

§Bellmouth (Kd = 0.8)

§In Projecting (Kd = 0.78)

§API or Liquid (Kd = 0.62)

If you select an entrance/exit connection type other than 'Ignore Entry/Exit Loss', FluidFlow will include the losses automatically into the calculation solution.

You will need to set the entrance/exit information for each connected pipe. To do this select each pipe from the drop down list at the Pipe Number field.


Save Environment Dialog

This dialog is used to select a default or user-defined environment.

To display the Save Environment Dialog:

§Select Options | Environment | Save Environment menu item.

Related Information

An "Environment" contains a range of default or user-defined settings. Many different Environments can be saved, which can then be selected for use with future models.

An Environment contains the following settings:

§Units

§Visible Properties

§Component Default


Script Dialog

This dialog is displayed when you select the 'Script' property for a User-Defined Generic component element. (This property is only available when 'GetPressureLoss Script' is selected as the 'Defining Equation' for the component.)

The GetPressureLoss Script is executed to determine the Pressure Loss associated with a User-Defined Generic node and is used then throughout the network solver engine for that node. Used in conjunction with User-Defined Fields, this is a powerful tool to write your own calculations.

Toolbar Buttons

Load - Load a Pascal Scripting (.PSC) file's contents to use in the scripting window.

Save - Save the contents of the scripting windows to a .PSC file.


Select Element Properties

Allows the selection of input and calculated/result fields to be displayed on the flowsheet.

Contents of the dialog vary depending on the type of component selected. The above dialog shows some of the properties available for a pipe.


Select Font

Flowsheet fonts can be selected from the font dialog, which also allows you to specify a color and size.


Select Pipe Coating Dialog

When you wish to make a buried pipe heat transfer calculation, you can choose from a range of pipe coating materials from the database.

This dialog allows the selection of any individual coating material.

Coating material is used together with the coating thickness field to completely define the coating characteristics to be used in the heat transfer calculation.

These values can be updated via the 'Database' menu item.


Select Pipe Insulation Dialog

When you wish to make a full heat transfer calculation along a pipe it is necessary to specify any pipe insulation that is used. There is a database table of Pipe Insulation materials together with their thermal properties stored as a function of temperature.

This dialog allows the selection of any individual insulation material.

Insulation material is used together with the Insulation thickness field to completely define the insulation used in the full heat loss calculation.

These values can be updated via the 'Database' menu item.


Select Pipe Backfill Dialog

When you wish to make a buried pipe heat transfer calculation, you can choose from a range of backfill materials from the database.

This dialog allows the selection of any individual backfill material.

Backfill material is used together with the backfill thickness field to completely define the backfill characteristics to be used in the heat transfer calculation.

These values can be updated via the 'Database' menu item.


Select Pipe Roughness Model

The table of pipe roughness values allows easy descriptive access to roughness values for typical usages after specific time periods.

The values in this table come from various literature sources, and can be updated via the 'Database | Pipe Roughness...' menu item.


Select Pipe Scaling Dialog

FluidFlow can be used to carry out pipe scaling studies, for example, how flow and pressure performance varies over a time period. Typical scaled pipe values are stored in a database for easy retrieval and reuse.

These values can be updated via the 'Database | Pipe Scaling...' menu item.


Set Component Dialog

Equipment flow characteristics stored in the component database can be selected from the dialog below.

Equipment items can be ordered according to Manufacturer, Material, or Application/Usage.

This dialog shows the available centrifugal pumps sorted by Manufacturer.


Set Pipe Dimension Dialog

Pipes are organized according to the following hierarchy: Material of Construction > Nominal Size > Name or Schedule.

To make a pipe selection you must traverse the grid and make a selection. This is shown above for the case of selecting a steel pipe of size 2 inch and classification Schedule 40.

These values can be updated via the 'Database | Pipes...' menu item.


Set Pump Changes Dialog

This dialog allows you to adjust the operating conditions of a centrifugal pump or fan.

The limits of adjustment are constrained by the data entered in the component database.


Set Text and Text Properties

This dialog allows you to set the text and text font properties of the free format text shown on the flowsheet.


Select Fluid Dialog

Use this dialog to specify a fluid at allowable boundary components.

There are over 1200 fluids in the standard release. You can add your own fluid via the 'Database | Fluids...' menu item if this is needed.


Select Solid Dialog

Use this dialog to select the solid to use in a settling slurry calculation.

Select Solid Dialog

You can add your own solids to the solids database via the 'Database | Solids...' menu item.


Tool Properties Dialog

Use this dialog to add/edit individual "Tools" items from the Configure Tools dialog.


To Do Properties Dialog

Use this dialog to add/edit individual "To Do" items from the To Do List dialog.


To Do List Dialog

The "To Do List" allows you to populate a list of items which must be considered as part of the model development. This tool can be useful if you have a team of engineers involved in a project and you wish to keep an up-to-date list of items to be checked and to whom in the design team each item is assigned to.


Update Check Dialog

This function allows you to check for any new updates of FluidFlow. Note, you will need an internet connection to execute this task. It is important to keep your software up to date to avail of current calculation methods and new program features.

To check for updates select:

§Select the 'Help | Check For Updates' menu item.

check for updates


User-Defined Fields Dialog

User-Defined Fields (UDFs) allow you to add extra, non-standard, information to any element (node/pipe/graphic object), which can then be accessed via Scripting.

The "User-Defined Fields" property is available for each element via the element's Input Editor. You can also specify default UDFs for each element kind via the Component Defaults dialog.

The User-Defined Fields dialog has 2 pages: the 'Fields' page contains an Input Editor to edit the property values, which are defined in the '(Definitions)' page.

You define fields using the following format:

Name=Kind:Value

(with optional :fields after 'Value' depending on the Field Kind.)

Field Kinds

0 = String

1 = Integer

2 = Float

3 = Boolean

4 = Pick List

5 = Enum List

6 = Unit List

For a string (0) field, specify the default value, for example:

Name=0:Jane Doe

For an integer (1) field, specify the default value, and, optionally, minimum and maximum input values, for example:

Age=1:52

Age (>18)=1:52:18:150

For a float (2) field, specify the default value, as well as (optionally) minimum and maximum input values, for example:

Height (No Restriction)=2:5.11

Height (5ft-6ft Only)=2:5.11:5.0:6.0

For a boolean (3) field, specify the default value "True" as 1 or "False" as 0:

Standard=3:0

For a pick list (4) field, you need to specify a semi-colon delimited list of "quoted" options that can be selected from a drop-down box, as well as the default value to be selected, for example:

QA Status=4:1:"0=To Do";"1=In Progress";"2=Closed"

In the above, 3 options will be displayed in a drop-down: To Do, In Progress, and Closed, with In Progress (which has a value of 1 associated with) selected by default.

For an enum list (5), specify the default value and the id of the enumerated list, for example:

Reducer=5:1:18

In the above, 18 refers to the Reducer Type enumerations list, which contains two entries: 0=Concentric and 1=Eccentric. The :1 default value will select Eccentric from the list.

For a unit list (6), specify the unit id, followed by the unit group, for example:

Height Unit=6:405:9

In the above, "cm", "ft", "in", etc., from the Length unit group (:9), are displayed in a drop-down box, with "ft" (:405) selected from the list. See the "Scripting | Unit Ids" section for a list of the unit groups and their ids.

Accessing User-Defined Fields in Scripting

The UDFs are mainly provided for use in Scripting where a property can be accessed with the "UDF." syntax:

Element.Property['UDF.FieldName']

or

Network.GetProperty(ElementId, 'UDF.FieldName')


Visible Results Dialog

This dialog is used to specify the result fields that will be displayed in the Results page of the Data Palette. The Results page is fully customizable and the content on this page can be edited by including a "tick" in the desired rows as shown in Figure 1 below.

To display the Visible Results Dialog:

§Select the Options | Environment | Visible Results menu item.

§Right-mouse click on the Data Palette to display a context menu and select 'Visible Results'.

§Press F8.

Visible Results Dialog
Components | Lists all available FluidFlow components. Selecting a component will update the 'Results' pane with the fields that are specific to that particular component.
Results | Displays the fields that are available for the currently selected component. A tick mark beside the field name means that it will be displayed in the Data Palette Results page whenever the component is selected on the Flowsheet.

Note: The display of some fields are conditional on the values of others, therefore, in some cases, even though the field is 'ticked' in the Visible Results dialog, it may not necessarily be displayed in the Data Palette Results page.

Set Visible Results

Figure 1: Set Visible Results.

Related Information

This layout and functionality of this dialog is based on the Print and Export Properties dialog.


Warning and Hints Dialog

To display the Warnings and Hints Dialog:

§Select the Options | Warnings and Hints menu item.

§Right-mouse click on the Data Palette to display a context menu and select 'Warnings and Hints'.

Warnings and Hints Dialog

Messages

Limits


Components Palette

The Components Palette can be displayed by selecting the 'View | Components Palette' menu item.

The Components Palette is linked to the database of available pipe and node element kinds, and allows for the selection of components with which to build a flowsheet model.

Similar components are grouped and selected by the named Group Tabs, and each component has a unique flowsheet icon. The screen display below shows the pipes tab selected with the various icons for the different pipe materials available for selection.

When a component is selected, the cursor changes accordingly as it moves over the flowsheet.

Default values for every component can be user-defined, and different default sets can be saved in different environments.

Note: In this User Guide, equipment items in the databases available for building a model are referred to as 'components'; these same items when placed on the flowsheet are referred to as 'elements'.


Components Bar

The Components Bar can be displayed by selecting the 'View | Components Bar' menu item.

This toolbar is linked to the components palette and allows for the selection of node/pipe elements with which to build a flowsheet model.

Similar components are grouped and each component has a unique flowsheet icon. You can customize the components available on this toolbar by selecting the "Down Arrow" on the far right hand side of the Components Bar (see red arrow on Figure 1 below). A new dialog will appear titled "Add or Remove Buttons". Select this option and a new drop-down list of components will appear. Using this drop-down list, you can now select which components you wish to have included or removed from the Components Bar.

Figure 1: Components Bar.

When a component is selected, the cursor changes accordingly as it moves over the flowsheet.

Default values for every component can be user-defined, and different default sets can be saved in different environments.

Note: In this User Guide, equipment items in the databases available for building a model are referred to as 'components'; these same items when placed on the flowsheet are referred to as 'elements'.


User Interface - Data Palette

The data palette and the flowsheet are synchronized. If an element is selected on the flowsheet then its associated data will be displayed on the data palette and vice versa.

On the above screen capture, the input data for the highlighted pipe is shown.


Messages and Warnings

FluidFlow provides a large number of Error Messages, Calculation Warnings, Component Warnings and Engineering Hints.

From the standpoint of the user: errors, warnings and hints fall into 3 classifications.

The first classification are showstoppers, i.e., you cannot solve a network or cannot utilize the results from a solution if a build error or a critical solver error has occurred.

The second classification contain warnings arising from the calculation. It is necessary for you, the user, to evaluate the impact of this type of warning. In most cases it is not appropriate to ignore these warnings, at least not without understanding the design, operating, and safety implications.

The third classification contain warnings and engineering hints specific to each component type.

All error, warning, and hint messages are displayed in a single list contained on the Messages page of the Data Palette as shown below.

Warnings Part 2

In this example there is a warning showing that the pipe length connecting orifice (2) to the open pipe (3) is shorter than the elevation difference between the two connecting nodes. This warning belongs to the pipe and falls into the third classification as defined above. In this case there is likely to be a data entry error either in the pipe length or the elevation of one or both of the connecting nodes.

The flowsheet and items in the error, warning and hint list (messages list) are linked. This means that if you click on an item in the list, then the component is highlighted in the flowsheet. The converse is also true. This means that you can use the list to move through all warnings after a calculation. It is good practice to get into the habit of viewing all items in this list each time the calculation button has been pressed.

It is useful to be aware of the processes invoked each time the Calculate button is pressed.

§First, all items in the messages list are cleared. i.e., all previous warnings, errors and hints are cleared.

§The application then checks for network build errors and inconsistencies. If any errors are found then the calculation cannot proceed.

§Assuming the network has been connected correctly, then the calculation solver is called. As the iterative solution proceeds any critical errors that occur are immediately forced into the messages list. In all solver processing, error messages should NOT occur. If an error or warning occurs at this time it will be marked as critical and you will be asked to contact our email support service. No other warnings or hints will be displayed and you should NOT consider the results to be accurate or representative of the model in operation as entered.

§If there are no critical errors (should always be the case), after the solver has converged to a solution any individual component warnings or engineering hints are entered automatically into the messages list.

Error, Warning and Hint Messages are saved along with the network and flowsheet information. This means that if you open an existing network from a file, the error, warning and hint messages are an integral part of the file and will be shown immediately in the Messages list.


Build Errors

The calculation cannot proceed if there is a build error.

A build error means that the flowsheet representation of the network is incomplete.

There are 3 fundamental reasons that a build error can occur.

1. A node may have insufficient pipe connections. An example would be a reducer or valve with only one connecting pipe.

2. Each network, and subnetworks must contain at least one boundary component where the pressure is known or specified. These component are any of the following

3. A node or pipe may have an identifying name, which acts as a database link to additional component information that is not present in the currently connected database. This will typically occur in a multi-user environment where different users swap files and databases instead of keeping centralized copies of files and databases.

The Messages list containing a build error is shown below. Note the stop icon in the list, the message repeated on the status line, the synchronization between the flowsheet and the messages list and the verbose description of the highlighted list item below the list (in the Description Window).

Network Build Error


Solver Warnings and Hints

After the completion of a calculation, messages and hints may appear. It is good practice to check the contents of this list after each calculation.

In the example shown below, there are 3 warnings associated with 3 separate pumps. Load up the file "[FluidFlow3 folder]\QA Incompressible Flow\Boosters\Booster Warnings.ff3" if you wish to view this in association with the flowsheet.

As you click on each list entry a more detailed description is shown and because the flowsheet is synchronized with the data palette the referred component is also selected in the flowsheet.

There are three main types of messages, each type is distinguished by the icon that appears to the left of the text within the list. Warnings and hints are shown in the list above and are associated with the hazard icon.

Build Errors stop the calculation proceeding and so these are associated with a stop icon.

Occasionally you may see a calculation error message, this also has a stop icon association. If you see this type of message it means that a calculation error has occurred OR that the network has not converged to a solution. Please feel free to contact support@fluidflowinfo.com if you experience this type of message. The most common reason for this class of message is that the network failed to converge. Convergence failures can occur for many reasons.


Input / Results / Charts and Calculation Methods

These are now itemized for each component. See the individual headings in the Components section.


List

Lists of components classified by types and ordered according to your preferences can be a useful aid for network navigation, for making block changes and deletions.

The List page in the Data Palette allows you to determine the contents and order of the list. There are two lists on this page. The upper list is a fixed content checklist containing each possible type of component. The contents of the lower list depend on the component types that are checked in the upper list. The list is synchronized with the flowsheet which means selecting items in this list also selects the component on the flowsheet.

Multi-selection of list items is possible by using the Ctrl and Shift keys together with the mouse.

There is a pop up menu available on a right mouse click which allows for sorting and other useful tasks such as selecting or deselecting all items.

List Pop Up menu


Watch

You can watch the progress of the solution via the Watch Window.

This keeps a list of tasks accomplished and progress made by the solver. Normally you should not use this window as its use significantly slows down the calculation (i.e., increases calculation time).


Customisation

The Data Palette has six tabbed windows as follows: 1) Messages, 2) Input, 3) Results, 4) Chart, 5) List & 6) Watch. The Data Palette is docked to the right side of the user interface by default however, it can be undocked by either dragging via the caption bar or by double clicking on the caption bar.

Note, if you accidentally close down the Data Palette, you can restore the dialog by simply selecting: View | Data Palette.

Messages Tab

The Messages tab is shown in Figure 1. This tab can be hidden from the Data Palette by selecting "View" and un-checking the Messages option from the drop-down list. Alternatively, you can right mouse-click on the Messages tab and uncheck the Messages option from the drop-down list. If your Messages tab has disappeared, you can follow either of these two approaches and check the drop-down list to ensure that the option for the Messages tab is checked ON.

Figure 1: Messages Tab.

Input Tab

The Input tab is shown in Figure 2. If you are using a language other than English, you may find you don't have enough space to display all text by default. You can therefore position the mouse over the column control separator (shown within the red circle in Figure 2) and drag the column position until all text is shown.

This tab can be hidden from the Data Palette by selecting "View" and un-checking the Input option from the drop-down list. Alternatively, you can right mouse-click on the Input tab and un-check the Input option from the drop-down list. If your Input tab has disappeared, you can follow either of these two approaches and check the drop-down list to ensure that the option for the Input tab is checked ON.

Figure 2: Input Tab.

Results Tab

The Results tab is shown in Figure 3. If you are using a language other than English, you may find you don't have enough space to display all text by default. You can therefore position the mouse over the column control separator (shown within the red circle in Figure 2) and drag the column position until all text is shown.

This tab can be hidden from the Data Palette by selecting "View" and un-checking the Results option from the drop-down list. Alternatively, you can right mouse-click on the Results tab and un-check the Results option from the drop-down list. If your Results tab has disappeared, you can follow either of these two approaches and check the drop-down list to ensure that the option for the Results tab is checked ON.

Note, you can customize the information displayed on the Results Tab. Firstly you can switch between SI and US Basic units from the Environment Set or right mouse-clicking on the Results display and selecting "Results Units". You can also define what information you require displayed by right mouse-clicking on the Results display and select "Visible Results".

Figure 3: Results Tab.

Chart Tab

The chart displayed can be customized by selecting the drop down menu button shown highlighted in red in Figure 4. We have a number of chart options, i.e., density, flow pattern (two-phase flow), static pressure, static temperature, system resistance, vapor quality (two-phase flow) and velocity. The system resistance chart is displayed by default.

Figure 4: Chart Tab.

List Tab

This is a powerful tool which allows you to display the full list of any components in the model which fall into a specific category such as pipes, boosters, valves, etc. You can make multi-selections from the list box by using either the SHIFT and Ctrl keys while left mouse clicking on the relevant element.

Figure 5: List Tab.

Watch Tab

The "Watch" display is only active during the calculation process. This keeps a list of tasks accomplished and progress made by the solver. Normally you should not use this window as its use significantly slows down the calculation (i.e., increases calculation time).

Figure 6: Watch Tab.


User Interface - Data Palette _2

Navigation: User Interface >

Return to chapter overview

Data Report

From v3.31 onwards, users can generate a Data Report for the model open on the flowsheet. To generate this report, select: View | Data Report. The report will appear as per Figure 1.

Data Report - All

Figure 1: Data Report - All.

This report can be customized to display only the Input or Results information for all pipe elements, all node elements or a combination of all pipes and nodes. Figure 2 shows the Input information for a sample model and Figure 3 shows the Results information.

Data Report - Input

Figure 2: Data Report | Input Display.

Data Report - Results

Figure 3: Data Report | Results Display.


Status Bar

The Status bar provides 'snapshot' details of the simulation such as cursor position, the selected element, calculation status, etc.:

The following is a description of all of the possible subsections in the status bar. The subsections marked with a * below will only appear if the calculation module referring to that section is activated.

Status Bar
Cursor Position | X-Y coordinates.
Snap Mode | The FluidFlow flowsheet allows for three snap options on the schematic layout, viz: orthogonal, isometric or none. The active selection is shown on the status bar.
Gas Calculation * | This section of the status bar will only be present if the gas module is activated. The section shows the volumetric basis for gas calculations (STP or NTP) and the calculation method used (Duxbury). You can change the calculation basis from the Calculation Options Dialog (F2 Key)
Slurry Calculation * | This section of the status bar will only be present if the Non-Newtonian/Slurry module is activated. The section shows the calculation method that will be used for settling slurry calculations. You can change the calculation basis from the Calculation Options Dialog (F2 Key)
Two Phase Calculation * | This section of the status bar will only be present if the Two=Phase module is activated. The section shows the calculation method that will be used for two phase calculations. You can change the calculation basis from the Calculation Options Dialog (F2 Key)
Element | The currently selected element is detailed on the status bar with its internal number shown in brackets.
Calculation Status | Displays the progress of a calculation and the status of its solution.


Customisation

Many aspects of the FluidFlow User Interface can be customized to suit the user's requirements.


Menus

Right-mouse click on any toolbar or menu and select the 'Customize...' menu item. This will display a 'Customize' dialog.


Flowsheet

The Flowsheet can be operated in any one of three modes:

1. Free format.

2. With an Ortho Snap.

3. With an Iso Snap.

Coupled with these options the user has control of the scale of the flowsheet (zoom) and the grid characteristic.

The snap and scale settings are saved with each flowsheet so that you can work in different modes in different flowsheets. It is possible to change modes at any time, although this is not recommended if you wish to retain a consistent layout of elements.

Each mode is selected by toggling either of the two buttons on the flowsheet toolbar:

If the button is highlighted, then the corresponding mode is selected, if neither button is highlighted then free format is selected.

Scale and grid settings and visibility are made from the two drop-down options on the upper toolbar:

The left drop-down provides the scale of the flowsheet; the right drop down allows you to show no grid, a fine grid or a coarse grid. (In Free Format mode this setting is ignored).

The presentation of the Flowsheet can also be changed based on your personal preferences. To access the Global settings for the Flowsheet, select Options | Flowsheet and the Flowsheet Options dialog will be displayed as per Figure 1 & 2.

Flowsheet Options v3.31

Figure 1: Flowsheet Options - General.

Scale, Grid and Snap Options can be pre-set here but subsequently altered using the toolbar or the flowsheet toolbar. The displayed background color of the flowsheet is white by default however, this can also be changed from here.

Split Pipe on Insertion: This determines the effect of joining a new pipe to an existing pipe to create a tee or adding a component to a pipe such as a valve. Either the pipe will split in two equal lengths, each length having the same properties as the original pipe or the original length will be retained and a new pipe added - the new pipe copied from the default setting.

Always Create Backup File: This is checked OFF by default. When checked ON, this enables you to set up the software to create a backup file of your model.

Figure 2: Flowsheet Options - Components.

Show (Hide) FlyBy Properties: Can be activated from here or from the Flowsheet Toolbar.

Show (Hide) Unique Name: Can be activated from here or from the Flowsheet Toolbar.

Show (Hide) Node / Pipe Numbers: Can be activated from here or from the Flowsheet Toolbar.

Show (Hide) Element Properties: Can be activated from here or from the Flowsheet Toolbar.

Text Font: This is the default text style and height used when adding text to your flowsheet. You can change this based on your personal preferences.

FlyBy Alignment: This is the alignment position applied to the text which appears in the FlyBy display.

Unique Name Alignment: This is the alignment position applied to the text which appears on the Flowsheet when we select the Show (Hide) Unique Name option.

Colors

Highlight Color: This is the color a node will be highlighted with when selected on the flowsheet.

Warning Color: This is the color a node on the flowsheet will be highlighted with when it has a warning message associated with it. This is red by default.

FlyBy Background Color: This is the background color applied to the FlyBy display.

Crosshairs Color: This is the color applied to the crosshairs. If You select "Custom", you will be able to select from a range of color options for the crosshairs, see Figure 3.

Crosshairs Color Options

Figure 3: Flowsheet Crosshair Color Options.


Environment

Under construction. In the meantime if you need help contact Michael Ross Int+44 2871 279227


Results

Users can change the units that fields of the Results page and Flowsheet are displayed in.

To display the Result Units Dialog:

§Select the Options | Environment | Result Units menu item.

§Right-mouse click on the Data Palette to display a context menu and select 'Result Units'.

§Press F9.

Result Units Dialog

General

Gas

Solids

Figure 1 shows the Set Result Units dialog. You can select your preferred units for your model and also define the required decimal point position. If you are changing units for gas flow or slurry flow systems, take care to select the Gas/Solids tabs. You can then set the desired units for these specific system types from these tabs.

Figure 1: Result Units Dialog.


Print Options

Model data can be exported to Excel and PDF (provided the relevant software packages are installed.) To export your model, select: File | Export and choose your required export option.

Reports can be customized to include the specific data you need in your final report file. The following section of the Help file outlines how to export models and how to customize the content of the reports.

Excel Reports

The quickest way to export your model to excel is to use either of the following two options:

1. Select: File | Export | Excel.

2. Select the "Export to Excel" button located near the top of the flowsheet.

Excel will automatically start/open on your computer (providing you have an Excel software license) and the model data will be exported to a new Excel file based on the Excel export settings assigned in FluidFlow (the customization of these settings is discussed below).

The section below discusses how to customize the content of your Excel report.

Select: File | Export | Excel Content. This opens the "Export Options" form as shown in Figure 1.

Figure 1: Excel Export Options.

Figure 1 shows that we can export the following data associated with the model file we have open.

Title Page: The project filename, file location and calculation status and settings will be exported to a dedicated sheet in Excel titled "Project Info".

Flowsheet: The flowsheet will be exported to a dedicated sheet in Excel which can be accessed from the tab in Excel titled "Flowsheet".

Table of Results: The table of results will be exported to a dedicated sheet in Excel which can be accessed from the tab in Excel titled "Table of Results". This file contains both Input and Results data for the components in the model file. The Input information appears listed under the green banner and the calculated results appear under the lilac/gray/purple banner.

Excel Report Sample

Figure 2: Example of Excel Report layout for steel pipes.

The table of results can be customized to include/exclude specific input and results information from your file. To customize this sheet, select:

File | Export | Excel Content & select the "Excel Columns" button (Figure 1). This opens a new form titled "Set Visible Excel Properties" as shown in Figure 3.

set visible excel properties

Figure 3: Set Visible Excel Properties.

The "Set Visible Excel Properties" form allows you to choose any component/node from the menu on the left hand side and then, from the right hand side, you can place a check-mark in the various property fields you wish to have exported to your final report. For instance, in Figure 3, the only Input property for steel pipe which the user wishes to export is "Inside Diameter". If you scroll down the list using the scroll bar, you can then place a check-mark in the various results fields you wish to export to the final report. Select OK when you are satisfied you have completed the customization of your Excel report.

Bill of Materials: A Bill of Materials will be exported to a dedicated sheet in Excel.

Warnings: All warnings enunciated for the model (as shown in the messages tab of the Data Palette) will be exported to a dedicated sheet in Excel.

Export Selected Elements Only: This option allows you to export the report data for only the specific elements/nodes you have highlighted or selected on the Flowsheet. You can select specific items by either holding the SHIFT key and left mouse-clicking on the nodes or, select a set of nodes using either the "Mark Any Area" mark any area or "Mark Rectangular Area" mark rectangular area functions which are available from the Flowsheet Toolbar (located to the left of the flowsheet).

Select OK on the "Set Visible Excel Properties" form to return to the "Export Options" form.

You can now export your model to Excel by using any of the following approaches.

1. Select the EXCEL button on the "Export Options" form.

2. Close the "Export Options" form and select: File | Export | Excel.

3. Close "Export Options" form and select the "Export to Excel" button located near the top of the flowsheet.

Notes: It is good practice to zoom to a level in the range of between 80 & 100% on the Flowsheet before exporting the model to Excel. This will help ensure the model (including any text) appears clearly on the final Excel report. It is also worth noting that the model should be positioned top-left on the flowsheet before developing your report settings. If you have developed the model and had to adjust the model position as it evolved, you can choose:

Edit | Select | Select All and re-position the entire model on your flowsheet by left mouse-clicking on a boundary or fitting and dragging the entire model into the new location (top-left of the flowsheet).

PDF Reports

Select: File | Export | PDF. This function automatically starts your installed PDF software and exports your model in PDF format. Note, you can customize the content of your PDF report by selecting:

File | Print Content.

This opens the form "Print and Export Options" as shown in Figure 4. The "Print and Export Options" form contains two tabs, Content & Settings.

print and export options

Figure 4: Print and Export Options (Content Tab).

Figure 4 shows that we can export the following data associated with the model file we have open.

Header: The project Header will be exported as part of the PDF file.

Title Page: The project filename, file location and calculation status and settings will be exported as part of the PDF file.

Flowsheet: The flowsheet will be exported as part of the PDF file.

Table of Results: The table of results will be exported to as part of the PDF file. This file contains both Input and Results data for the components in the model file. The contents of the table of results can be customized as outlined below.

Select: File | Print Content and on the "Print and Export Options" form select the "Print Columns" button (see Figure 4). This opens the "Set Visible Print and Export Properties" form as shown in Figure 5.

set visible print properties

Figure 5: Set Visible Print and Export Properties.

The "Set Visible Print and Export Properties" form allows you to choose any component/node from the menu on the left hand side and then, from the right hand side, you can place a check-mark in the various property fields you wish to have exported to your final report. For instance, in Figure 5, the only Input property for steel pipe which the user wishes to export is "Length". If you scroll down the list using the scroll bar, you can then place a check-mark in the various results fields you wish to export to the final report. Select OK when you are satisfied you have completed the customization of your PDF report.

Bill of Materials: A Bill of Materials will be exported to the PDF file.

Warnings: All warnings enunciated for the model (as shown in the messages tab of the Data Palette) will be exported to the PDF file.

Footer: The project Footer will be exported as part of the PDF file.

The second tab of the "Print and Export Options" form titled "Settings" (Figure 6), allows you to edit the page dimensions of the final PDF report. This is useful a function as, if we have created a relatively small model on the flowsheet, we can reduce the page width and height to ensure the model appears neatly on a single PDF page. Likewise, if we have a large model on the flowsheet, we can edit the page width and height to ensure once again that the model appears neatly on a single PDF page as opposed to being exported to a number of pages.

Note, it is good practice to zoom to a level in the range of between 80 & 100% on the Flowsheet before editing the page width and height settings and exporting the model to PDF. This will help ensure the model (including any text) appears clearly on the final PDF report. You may need to make a number of adjustments to the page width and height in the Settings tab and view the preview (see "Preview" button in Figure 4) before deciding on a final report setting and exporting the model data to PDF. It is also worth noting that the model should be positioned top-left on the flowsheet before developing your report settings. If you have developed the model and had to adjust the model position as it evolved, you can choose:

Edit | Select | Select All and re-position the entire model on your flowsheet by left mouse-clicking on a boundary or fitting and dragging the entire model into the new location (top-left of the flowsheet).

print and export options settings

Figure 6: Print and Export Options (Settings Tab).

Note, the print settings available to you are dependent on the printer drivers you have installed on your computer. You may find that if you are printing/exporting your model file on a computer which has several printer/plotter drivers, that you have more/additional print options including page sizes such as A0, A1, etc. Otherwise, you may be restricted to using A3, A4, etc. If you wish, you can therefore install additional printer/plotter drivers on your computer to enable additional print/page setting options.


Export Options

Under construction. In the meantime if you need help contact Michael Ross Int+44 2871 279227


FlyBy Options

This dialog is used to specify the Input and Result fields that will be displayed in the FlyBy Report.

To display the FlyBy Options dialog:

§Select the Options | Environment | FlyBy Options menu item (or select the F6 key).

FlyBy Options Dialog

Component Categories

Lists all available FluidFlow components. Selecting a component will update the 'Input' and 'Results' pane on the right hand side with the fields that are specific to that particular component. Place a check mark in each input or results field you wish to have displayed in the FlyBy.

Note: The display of some fields are conditional on the values of others, therefore, in some cases, even though the field is 'ticked' in the FlyBy Options dialog, it may not necessarily be displayed in the FlyBy Report.

The FlyBy Options dialog is shown in Figure 1.

FlyBy Options v3.31

Figure 1: FlyBy Options (F6).


Components

This section describes each of the components or elements that can be used to construct a fluid network.

The subsections for each element type describe the input data requirement, a description of the results you can expect, charts that can be displayed and a brief technical overview of the calculation theory.

This section is arranged in the same order that you will find items on the Component Palette.


Pipes

In the flowsheet pipes (or tubes) are used to describe the connectivity between fluid equipment items.

On the component palette, pipes are organized according to materials of construction. The following piping materials are available for your use:

·ABS - Acrylonitrile-Butadiene-Styrene

·Aluminium

·Asbestos Cement

·Cast Iron

·Concrete

·Copper

·Ductile Iron

·Flexible or corrugated hose

·Glass

·PE - Polyethylene

·PVC - PolyVinylChloride

·PP or PFA - Polypropylene, FluoroPlastics or lined pipe

·Stainless Steel

·Steel

For each piping material there are many "nominal" pipe sizes and within the nominal size there are many pipe classes. FluidFlow stores size information in a database of pipes, together with other piping and piping material information. This additional piping information such as material conductivity, sizing data, economic data, etc., enables calculation of economical velocities, heat transfer, and other functions without the need for constant data entry by the user.

An example of the data hierarchy for a pipe, following the Material -> Size -> Classification hierarchy, would be Steel -> 6" -> Schedule 40.


Data Entry

Navigation: Components > Pipes >

Return to chapter overview

Data Entry - Pipes

Data entry for pipes is the same for all materials of construction.

If you click on a pipe in the flowsheet the Input Editor displays the basic pipe information shown below.

Pipes Input Editor1

Figure 1: General Pipe Input.

Unique Name: Allows you to enter a descriptive name for this pipe. You can use this to describe the pipe or your company may use a naming convention. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For pipes there are three possible Status options. 1) On, 2) Off or Closed and 3) Ignore Pressure Loss.

On: This is the normal position and tells the application that this pipe is open and to calculate the pressure loss in the line.

Off or Closed: This means that the pipe is closed to flow. This means you can close pipes if you wish to isolate part of a network.

Ignore Pressure Loss: This means that FluidFlow sees the pipe as open but does not make a pressure/friction loss calculation for this pipe, i.e., friction loss will be zero. Note, although a pipe status may be set to Ignore Pressure Loss, the software will still calculate any changes in flowing velocity, associated velocity pressure and resultant static pressure values.

Length: This sets the length of the pipe.

It is recommended that pipe lengths of "0" are avoided. In scenarios where you have fittings connected immediately together, the software requires that a short section of pipework is used. You can set this pipe to have a diameter which matches the diameter of the fittings and a short length such as 0.2 ft (0.2 M) etc. Note, the pressure loss across the short pipe for the most part, is negligible compared to the losses across the remainder of the system. If you wish, you can also set the Status of this pipe to "Ignore Pressure Loss" from the Input tab of the Data Palette.

It is also recommended that any pipe lengths defined in a model are sufficient to overcome the elevation values defined for the connected upstream and downstream nodes.

Length Unit: This refers to the unit you wish to use for entering the pipe length described above. Input units are never changed by the program, but you can get the program to change all output/result units.

Geometry: For pipes, this entry describes the cross-sectional area profile of the pipe. Possible values are: Cylindrical; Rectangular/Square; Annular. If you select Rectangular/Square you can make pressure loss calculations on ductwork. Selecting Annular allows you to make pressure loss calculations on pipes with an annular (the region between two concentric circular cross sections). You should be aware that if this selection is changed the additional/changed rows appear in the Input Editor. For a Rectangular/Square selection the following rows appear:

Pipes Input Editor2

Figure 2: Additional rows/input data required for rectangular ducting.

Rectangular Width: This row is used to enter the width of the duct.

Rectangular Height: This row is used to enter the duct height.

Width/Height Unit: This refers to the unit of length used for the above two entries.

Max Op Pressure: If there is a maximum pressure rating of the ductwork you should enter this here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: This refers to the unit of pressure used to specify the maximum operating pressure of the duct.

For annular pipes the following rows appear:

Pipes Input Editor3

Figure 3: Additional rows/input data required for annular pipes.

Annulus Inner Diameter: This is the outside diameter of the inner pipe.

Annulus Outside Diameter: The inside diameter of the outer pipe.

Diameter Unit: This refers to the unit of length used for the above two entries.

Max Op Pressure: If there is a maximum pressure rating of the annular pipe you should enter this here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: This refers to the unit of pressure used to specify the maximum operating pressure of the annular pipe.

Use Database Size: The options for this entry are: Yes; No. Selecting Yes allows you to use pipe size information from the FluidFlow database of pipes. Selecting No allows you to enter pipe diameter data directly. Figure 1 shows the additional rows that define the database selection entries if Yes is selected.

Nominal Size and Classification: These rows in the Input Editor work together. You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of pipe size and classification is made via the Set Pipe Dimension dialog. Remember that the pipe hierarchy is Material -> Size -> Classification, an example would be Steel -> 6" -> Schedule 40

If you select No to the Use Database Size entry then the following rows/input need to be completed.

Pipes Input Editor4

Figure 4: Additional rows/input data required for Use Database Size = No.

Inside Diameter: This is the inside diameter of the pipe.

Diameter Units: The units of length for the Inside Diameter and Pipe Wall Thickness entries.

Wall Thickness: The wall thickness of the pipe. This property is used in heat loss calculations.

Friction Model: The options for this entry are: 1) Moody 2) Hazen Williams, 3) Fixed Friction Factor & 4) Shell-MIT.

Moody: Unless you have a specific engineering reason, you should leave this setting at Moody. This means that FluidFlow calculates friction factor according to the Moody Charts (in fact FluidFlow uses the Colebrook-White equation for estimating friction factor).

Hazen Williams: These calculations are specific for water and are included to allow for fire system calculations according to NFPA (National Fire Protection Association) guidelines. If you are making a fire water calculation you can also use the Moody relationship as the NFPA guidelines do not preclude this option. If you decide to use Hazen Williams pressure loss relationships then additional input data is required.

Pipes Input Editor5

Figure 5: Additional row/input data required for Friction Model set to Hazen Williams.

Hazen Williams Coeff: This is the value of C used in the Hazen Williams formula for pressure loss. Typical C factors used in design, which take into account some increase in pipe roughness as the pipe ages are: Cement Pipes - 140; Cast Iron Pipes - 100; Concrete Pipes - 100; Copper Pipes - 150; Steel Pipes - 120; Polyethylene Pipes - 150; Polyvinyl Chloride Pipes - 150; Fibre Reinforced plastic - 150.

Careful consideration should be given to the selection of the correct Hazen Williams coefficient. For instance, a typical C factor for new unlined steel pipe is close to 140. However, it quickly deteriorates to 130 and after a few years of use, to 120. Conservative design can be built into systems by intentionally designing a lower Hazen Williams coefficient than that suggested for each of the pipe materials noted above.

The Table below provides typical values for the H-W "C" Coefficient as documented in various design standards which can be used in the Hazen Williams equation.

Pipe or Tube | NFPA 13 (2007 Edition) | EN 12845 (2004 - 2009 Edition) | BS 9251
Unlined Cast Iron | 100 | 100 | ---
Unlined Ductile Iron | 100 | 110 | ---
Black Steel (Dry Systems including Preaction) | 100 | --- | ---
Black Steel (Wet Systems including Deluge) | 120 | 120 | 120
Galvanized (All) | 120 | 120 | ---
Plastic (All) | 150 | --- | 150
Cement-Lined Cast Iron | 140 | 130 | ---
Cement-Lined Ductile Iron | 140 | --- | ---
Copper Tube | 150 | 140 | 140
Stainless Steel Tube | 150 | 140 | ---
Asbestos Cement | 140 | --- | ---
Concrete | 140 | --- | ---

The above is for reference purposes. It is recommended that the designer reviews relevant publications in order to select the appropriate C factor for your design application.

The publication titled "Handbook of Hydraulics (7th Edition), McGraw-Hill" also documents "C" Coefficient values for various pipe conditions as follows:

Type of Pipe | C Coefficient
Extremely Smooth and Straight | 140
Very Smooth | 130
New Riveted Steel | 110
Old Riveted Steel | 100
Old Cast Iron | 95
Old Pipes in Poor Condition | 60-80

Fixed Friction Factor: If this option is selected, then a row appears asking for the value you wish to use for friction factor. FluidFlow uses the Darcy friction factor and this is the value you should enter. Darcy friction factor is 4 times the Fanning Friction Factor. Note, fixing the friction factor is generally not a recommended modelling technique. Fixing friction factors should only be used in systems where experimental friction factors have been measured or have been back-calculated from plant measurements.

It is also not appropriate to fix the friction factor when modelling settling slurry systems as the friction factor is the output of the modelling method used.

Shell-MIT: When this option is selected, the software calculates the pipe friction loss according to the Shell-MIT equations. The solution approach uses a modified Reynolds Number. Using this modified Reynolds Number, the friction factor is calculated depending on whether the flow is laminar or turbulent. The Shell-MIT method is used in the calculation of pressure loss in heavy crude oil and heated liquid pipelines and as such, should be used only for such specific cases. It is not recommended that users select this pipe friction loss method for fluids other than that described herein.

Use Database Roughness: The options for this entry are: Yes; No. Selecting yes allows you to use pipe roughness information from the FluidFlow database of roughness factors. Selecting No allows you to enter a pipe's absolute roughness directly. Figure 1 shows the additional rows that define the roughness selection entries if Yes is selected.

Roughness Description: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the roughness database via the Select Pipe Roughness dialog. Roughness values are stored for each pipe material and are attached to a description that has, perhaps more meaning than an absolute value. For example "Gas Pipes after several years use" is easier to understand than using the equivalent value of 0.14mm.

If you select No to Use Database Roughness then Figure 6 shows the additional data entries that are required.

Pipes Input Editor6

Figure 6: Additional Row/input data required for Use Database Roughness set to No.

Roughness: This is the absolute value in length units representing the average imperfections in the pipe surface. Typical values can be found in many literature sources. FluidFlow uses this roughness value in the calculation of pipe friction factor according to the Haaland equation. In flow calculations relative roughness (absolute roughness divided by the pipe inside diameter is the important criteria).

Roughness Units: The unit of length used to define the pipe absolute roughness.

Use Database Scaling: The possible values for this entry are: Yes; No. Selecting yes allows you to use pipe scaling information from the FluidFlow database of scaling factors. Selecting No allows you to enter a scaling value directly. Figure 1 shows the additional row that defines the scaling factor directly.

Scaling: This is the reduction in pipe diameter, expressed as a percentage, that may occur over a time period. For example water pipes used without water treatment may scale by 10-12% after a period of 15 years use. Since pipe diameter is the single most significant factor in determining pressure loss it is often important to carry out pipe aging studies using this field.

Scaling Description: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the pipe scaling database via a dialog. Scaling values are stored for each pipe material and are attached to a description that has, perhaps more meaning than an absolute value. For example "Heavy Scaling" is easier to understand than using the equivalent value of a 15% reduction in inside pipe diameter.

Sizing Model: The options for this entry are: 1) Economic Velocity 2) By Velocity and 3) By Pressure Gradient. FluidFlow allows you to automatically size a pipe or duct based on any of these three approaches.

Note, when sizing ductwork using any of these three models, the software will calculate the required duct diameter. If you wish to develop a ductwork system with a rectangular geometry, you will need to determine the height and width of the duct required and enter these values into the Input tab of the Data Palette for each section of ductwork. There are various literature sources which provide tables of equivalent dimensions for circular ductwork, such as the ASHRAE Guides & CIBSE Guide C.

Economic Velocity: By selecting this option, we are allowing the software to determine the exact pipe size corresponding to the calculated economic velocity (shown in the Result). The economic velocity is a function of the fluid physical properties, the pipe materials, various capital and installation costs and the operating hours/year. This value is calculated automatically by FluidFlow from the Generaux equation and the calculation uses the values and constants stored in the pipe sizing database. Economic velocity is changing (generally decreasing) with time, particularly as energy costs have increased rapidly in recent times. Flite Software keeps these values up to date, which is one of the many reasons you should keep your software current. Economic velocity is meant to be a guide for pipe sizing; it is NOT a strict criteria for sizing pipes. For example, you would not use this value to size pipes where two phase flow is present, or where plant operation is intermittent, or where materials can degrade at high velocities, or for Non-Newtonian flows.

Note: The exact economic size is the exact pipe size corresponding to the economic velocity. Of course pipes are purchased in standard sizes and the exact economic size is meant to be available so that you can check pipe size at a glance. The caveats explained in the Economic Velocity description should be considered before blindly following this value.

By Velocity: If you select "By Velocity" then Figure 7 shows the additional data entries that are required.

Pipes Input Editor11

Figure 7: Sizing Model - By Velocity.

Design Velocity: This row is used to enter the design pipe/duct velocity. FluidFlow will automatically determine the exact pipe size corresponding to this velocity (shown in the Results as Exact Velocity Size).

Velocity Unit: This refers to the unit of velocity used for the above entry.

By Pressure Gradient: If you select "By Pressure Gradient" then Figure 8 shows the additional data entries that are required. Note: when selecting this option, the flow in the system must be a design condition, i.e., we cannot, in reality, size a pipeline using this option if only the inlet and outlet pressures are known.

Pipes Input Editor12

Figure 8: Sizing Model - By Pressure Gradient.

Design Pressure Gradient: This describes the design rate-of-change in pressure across the length of pipe/duct. FluidFlow will automatically determine the exact pipe size corresponding to this gradient (shown in the Results as Exact Pressure Gradient Size).

Pressure Gradient Unit: This refers to the unit of pressure gradient used for the above entry.

Heat Loss Model: For pipes there are 5 possible options: 1) Ignore Heat Loss/Gain 2) Fixed Temperature Change 3) Fixed Transfer Rate 4) Do Heat Transfer Calculation and 5) Buried Pipe Calculation.

Heat Loss Model - Option 1: Ignore Heat Loss/Gain is the default setting. This means that flow along the pipe is assumed to be adiabatic.

Heat Loss Model - Option 2: Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows down the pipe. Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 9. Note, when using the Fixed Temperature Change function, the software automatically determines the amount of heat energy transfer across the pipe. This result is then displayed in the Results table for the pipe. The Inside Film Coefficient, Pipe Wall Coefficient, Insulation Coefficient, Outside Film Coefficient or Overall HT Coefficient are not available to view in the Results Table when using this selection.

Pipes Input Editor7

Figure 9: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows along the pipe. Into Network means that the temperature of the fluid is increased as the fluid flows along the pipe.

Temperature Change: Use this row to specify the temperature change that occurs as the fluid flows down the pipe. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties along the pipe as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Heat Loss Model - Option 3: Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows along the pipe. Selecting Fixed Transfer Rate can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 10. Note, when using the Fixed Transfer Rate function, the software automatically determines the temperature change across the pipe element. This result is then displayed in the Results table for the pipe. The Inside Film Coefficient, Pipe Wall Coefficient, Insulation Coefficient, Outside Film Coefficient or Overall HT Coefficient are not available to view in the Results Table when using this selection.

Pipes Input Editor8

Figure 10: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a pipe. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties along the pipe as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows along the pipe.

Heat Loss Model - Option 4: Do Heat Loss Calculation, means that FluidFlow will make a full heat loss calculation. You can also specify insulation properties if this selection is made. Selecting Do Heat Loss Calculation adds additional rows to the Input Editor as shown in Figure 9. Note, when using the Do Heat Loss Calculation model in conjunction with the Calculate U Value function, the software automatically calculates the Inside Film Coefficient, Pipe Wall Coefficient, Insulation Coefficient, Outside Film Coefficient & Overall HT Coefficient on the basis of the design inputs for the rows shown in Figure 11. The calculated results for these parameters are displayed in the Results Table for the pipe.

When we use the Do Heat Loss Calculation model in conjunction with the Input U Value function, the software automatically determines the temperature change and energy transfer across the pipe element. These results are then displayed in the Results table for the pipe. The Inside Film Coefficient, Pipe Wall Coefficient, Insulation Coefficient or Outside Film Coefficient are not available to view in the Results Table when using this selection.

Pipes Input Editor9

Figure 11: Additional input data required for Heat Loss Model Set to Do Heat Loss Calculation.

Heat Transfer Coeff (U Value): There are two possible values: Calculate U Value; Input U Value. If Calculate U Value is selected, the user will need to define the values for each row as shown in Figure 9. Refer to Figure 10 below for further information on selecting the option Input U Value.

Use Insulation: There are two possible values: Yes; No. If Yes is selected then the additional rows needed to fully specify the insulation material and thickness appear as shown in Figure 9.

Insulation Type: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select an insulation material from the pipe insulation database via the Select Pipe Insulation dialog. Insulation materials are stored together with their thermophysical properties as a function of temperature.

Insulation Thickness: This is the thickness of insulation that will be used to cover the pipe.

Insulation Thickness Unit: The unit of length that is used to specify the insulation thickness.

Local Ambient Temperature: This value represents the local temperature of the outside air. Heat Loss calculations take into account conduction, convection and radiation losses. The heat loss calculation assumes that the pipes are exposed to air. Note, you cannot use this calculation to estimate heat loss for buried pipe scenarios without losing accuracy.

Temperature Unit: The unit of temperature for the local ambient air.

Surface Emissivity: The value of emissivity for the insulation material (or cladding) if this is used. Typical values for Aluminium cladding are 0.8 for polished aluminium to 0.4 for oxidized aluminium. Iron 0.6. Stainless 0.35.

Local Wind Speed: This is the local wind speed of the ambient air. The value is used in the calculation of the convection coefficient.

Speed Unit: The unit of speed used for the local wind speed.

Selecting Input U Value for the Heat Transfer Coeff (U Value) field adds additional rows to the Input Editor as shown in Figure 12:

Pipes Input Editor9 - Part 2

Figure 12: Additional input data required when Heat Transfer Coeff (U Value) is set to Input U Value.

Use Insulation: There are two possible values: Yes; No. If Yes is selected then we must define the insulation thickness.

Insulation Thickness: This is the thickness of insulation that will be used to cover the pipe. This allows the software to determine the overall outer diameter of the pipe and insulation combined.

Insulation Thickness Unit: The unit of length that is used to specify the insulation thickness.

Local Ambient Temperature: This value represents the local temperature of the outside air. Heat Loss calculations take into account conduction, convection and radiation losses. The heat loss calculation assumes that the pipes are exposed to air. Note, you cannot use this calculation to estimate heat loss for buried pipe scenarios without losing accuracy.

Temperature Unit: The unit of temperature for the local ambient air.

Overall Ht Transfer Coeff: The overall heat transfer coefficient for a pipe is obtained from the individual resistances. Typically resistances can be inside film, pipe wall, pipe insulation, anti-corrosion coatings, anti-buoyancy concrete, surrounding earth, outside film, etc.

Typical overall heat transfer coefficients can be found in many literature sources, and depend on pipe size, buried material, soil moisture (or subsea currents), etc.

Heat Loss Model - Option 5: Buried Pipe Calculation allows you to perform heat transfer calculations which take into account local ground conditions. Selecting Buried Pipe Calculation adds additional rows to the Input Editor as shown in Figure 13. When we use the Buried Pipe Calculation function, the software automatically determines the temperature change and energy transfer across the pipe element. These results are then displayed in the Results table for the pipe. TheInside Film Coefficient, Pipe Wall Coefficient, Insulation Coefficient or Outside Film Coefficient are not available to view in the Results Table when using this selection. You can however view the Overall HT Coefficient for the element in the Results table.

Pipes Input Editor13

Figure 13: Additional input data required for Heat Loss Model Set to Buried Pipe Calculation.

Use Pipe Coating: No is the default setting. Figure 14 outlines the additional data entries that are required if we select Yes.

Pipes Input Editor14

Figure 14: Additional input data required when the option Use Pipe Coating is set to Yes.

Pipe Coating Type: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the pipe insulation database.

Pipe Coating Thickness: This is the thickness of coating that will be used to cover the pipe.

Use Pipe Insulation: No is the default setting. Figure 15 outlines the additional data entries that are required if we select Yes.

Pipes Input Editor15

Figure 15: Additional input data required when the option Use Pipe Insulation is set to Yes.

Pipe Insulation Type: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select an insulation material from the pipe insulation database via the Select Pipe Insulation dialog. Insulation material are stored together with their thermophysical properties as a function of temperature.

Pipe Insulation Thickness: This is the thickness of insulation that will be used to cover the pipe.

Use Pipe Backfill: No is the default setting. Figure 16 outlines the additional data entries that are required if we select Yes.

Pipes Input Editor16

Figure 16: Additional input data required when the option Use Pipe Backfill is set to Yes.

Pipe Backfill Type: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the database.

Pipe Backfill Thickness: This is the thickness of backfill that will be used around the pipe.

Buried Depth to Pipe Center: This is the distance from the ground surface to the pipe centerline.

Thickness/Depth Units: The unit of length that is used when specifying the thickness/depth.

Soil Type: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a soil type from the database. Figure 17 shows the default settings for this row.

Pipes Input Editor17

Figure 17: Soil Type.

Average Soil Temperature: This is the average annual temperature condition of the soil local to the pipe.

Temperature Unit: The unit of temperature for the local soil condition.

User-Defined Fields:

Draw Thickness: This value represents the thickness that the pipe is drawn in the flowsheet. It has no effect on any calculation. You can use this feature to emphasize your flowsheet. This can be particularly useful when used together with the pipe color.

Draw Color: This row in the Input Editor allows you to change the color that the pipe is drawn in the flowsheet. You can select the color from the standard windows color picker dialog.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 18:

Pipes Input Editor10

Figure 18: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top, Bottom, Left, or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Pipes >

Return to chapter overview

Result Table - Pipes

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Pipes Results Table1 Pipes Results Table2

Figure 1: All available results for a liquid phase state. Figure 2: Default pipe results for a liquid phase calculation

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

0.015D or ds: This is the particle size referenced to 1.5% of the internal pipe diameter. Depending on solid particle size data defined, this value is used in 4CM friction loss calculations.

0.015D Vsm: Calculated maximum deposition limit velocity (Vsm) for a 0.015D or ds particle.

1000 d50/D: Ratio of particle d50 over pipe internal diameter. Value is multiplied by 1000 to improve presentation of data.

4CM A: Friction reduction parameter associated with the pseudo-homogeneous solids fraction.

4CM B: Friction reduction parameter associated with the full stratified solids fraction.

4CM C: Friction reduction parameter associated with the heterogeneous solids fraction.

Carrier Fluid Component Friction Loss Contribution: Pressure drop in height of standard water per length of pipe caused by the carrier fluid and solids sized 40 um x 2.650 / Ss or smaller.

Carrier Fluid Component Volume Fraction, Cvf: Volumetric solids concentration of particles sized 40 um x 2.650 / Ss.

Composition Mass %: This is the fluid mass composition that remains constant throughout the pipe. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Cvd Deposition Velocity: This is the limiting velocity for stationary deposition in a horizontal pipe. Below this velocity, at the flowing concentration, the solid particles will start to settle. The deposition velocity is dependent on the solid and fluid properties as well as the concentration.

Note, if a value for Cvd Deposition Velocity is not provided when modelling a slurry using the Liu Dezhong method, the slurry may in fact be a non-settling type in which case, further information in the form of laboratory rheology data should be obtained for the slurry. This will help characterize the slurry allowing users to select the most appropriate modelling approach.

D50h Vsm: Calculated maximum deposition limit velocity (Vsm) for the heterogeneous fraction mass median particle diameter (d50h).

Design Note: FluidFlow enunciates a saltation/blockage warning if the pipe is horizontal AND the flowing slurry velocity is below the maximum deposition velocity. The Cvd deposition velocity varies with slurry concentration and FluidFlow uses the maximum deposition velocity and not the deposition velocity at the actual slurry concentration (Cvd). The reason for using maximum deposition velocity instead of actual deposition velocity in the comparison is that localized concentrations can differ from the average slurry concentration. Also operating concentrations can change over time. The general consensus of designers is that it is better practice to use maximum deposition velocity to cover all localized and time-based concentration scenarios.

Economic Velocity: The pipe economic velocity. The economic velocity is a function of the fluid physical properties, the pipe materials, various capital and installation costs and the operating hours/year. This value is calculated from the Generaux equation and the calculation uses the values and constants stored in the pipe sizing database. Economic velocity is changing (generally decreasing) with time, particularly as energy costs have increased rapidly in recent times. Flite Software keeps these values up to date, which is one of the many reasons you should keep your software current. Economic velocity is meant to be a guide for pipe sizing; it is NOT a strict criteria for sizing pipes. For example you would not use this value to size pipes where two phase flow is present, or where plant operation is intermittent, or where materials can degrade at high velocities, or for Non-Newtonian flows.

Element Type: Refers to the descriptive name for the element.

Exact Economic Size: This is the exact pipe size corresponding to the economic velocity. Of course pipes are purchased in standard sizes and the exact economic size is meant to be available so that you can check pipe size at a glance. The caveats explained in the Economic Velocity description should be considered before blindly following this value.

Exact Pressure Gradient Size: This is the exact pipe/duct size corresponding to the "Sizing Pressure Gradient" value set by the engineer on the Input tab. This allows the Engineer to quickly determine the pipe/duct size required in order to achieve this design pressure gradient. Using this information, you can then select the nearest matching standard pipe/duct size from the Nominal Size field on the Input tab. When you have made your new selection, re-calculate the model to refresh the calculated results. Other calculated results will help you make your final selection such as, pipe velocity, etc.

Exact Velocity Size: This is the exact pipe/duct size corresponding to the "Design Velocity" value set by the engineer on the Input tab. This allows the Engineer to quickly determine the pipe/duct size required in order to achieve this design velocity. Using this information, you can then select the nearest matching standard pipe/duct size from the Nominal Size field on the Input tab. When you have made your new selection, re-calculate the model to refresh the calculated results. Other calculated results will help you make your final selection such as, pipe pressure loss, etc.

Flow: This is the pipe inlet flow that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the pipe will be identical. For incompressible fluids the pipe inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes along the pipe. For gas flows this represents the actual flow at the pipe inlet. If you show the flow in volumetric units then actual inlet flow is always less than actual outlet volume flow. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows down the pipe. The flow row represents the actual flow at the pipe inlet conditions of temperature and pressure.

Note: if you are modelling a gas system and the pseudo volumetric flow rate (STP & NTP) results for the fluid are identical, this is due to the fact that the fluid will actually be liquid at STP & NTP and as such, density is constant. This therefore will return a constant valve of flow rate for pseudo volumetric flow condition.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows down the pipe. The flow row represents the actual flow at the pipe inlet conditions of temperature and pressure.

Fluid Shear Rate (in s-1): This is the rate of change of velocity as one layer of fluid passes over another. Numerically equal to 8 v/D. It has units of reciprocal seconds.

Friction Factor: This is the Darcy friction factor. Take care not to get confused with Fanning friction factor, which is used in many texts. The simple relationship between the two is

fD = 4fF

Friction Loss: This is the calculated total pressure loss due to friction.

This is the calculated total pressure loss. For liquids this value is calculated according to the loss calculation method set by the "Friction Model" in the data Input Editor. For gases the calculation method uses an incremental solution of the energy equation together with an equation of state (EOS). For Non-Newtonian, Non Settling Slurries and Settling Slurries the calculation method depends on the settings you are currently using. These are changed from the Calculation Options Dialog.

In FluidFlow frictional pressure loss is defined (from the Energy Equation) as:

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

or from the equation

ΔPfric = 0.5 K ρv2/D

You should note that for non-isothermal liquids and all other phase states, the density is not treated as being constant.

Full Suspension Velocity 0.015D: Velocity at full suspension for a ds sized particle.

Heat Transfer Coefficient: If the Heat Loss Model is set to "Do Heat Loss Calculation", then an additional row will appear in the results table showing the overall heat transfer coefficient used to calculate the pipe heat loss/gain.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred. Note, the value for heat transferred as displayed in the Results only includes heat loss or gain from external sources and consequently, the Joule-Thomson heat change is not included in the heat transfer value. The Joule-Thomson loss is however included in the calculation of all temperatures, i.e., the temperature is calculated from external loss/gains + J-T effect.

Heterogeneous Component Friction Loss Contribution: Incremental pressure drop in height of standard water per length of pipe caused by particles sized between 200 microns and 0.015D or ds.

Heterogeneous Component Volume Fraction, Cvh: Volumetric solids concentration of particles sized between 200 microns and 0.015D or ds.

In Cross Sectional Flow Area: This is the calculated inside pipe cross sectional area at the pipe inlet.

In Density: The fluid density at the inlet conditions. Density depends on temperature and pressure of the fluid. From V3.23.1 onwards FluidFlow displays static density at known flow or known pressure boundaries and static density at all other elements.

In Fluid Phase: The phase state at the inlet of the pipe.

In Gas Superficial Velocity: This is the vapor superficial velocity at the pipe inlet conditions. The vapor superficial velocity is the velocity that would occur if the gas alone flows in the pipe. Mathematically

VsG = QG/Ap

In Liq Superficial Velocity: This is the liquid superficial velocity at the pipe inlet conditions. The liquid superficial velocity is the velocity that would occur if the liquid alone flows in the pipe. Mathematically

VsL = QL/Ap

The velocity for two phase flow is a summation of the liquid and gas superficial velocities:

Vm = VsL + VsG

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within a pipe. The velocity of sound is a thermo physical property and depends on temperature and pressure.

In Piezometric Pressure: The piezometric pressure at the pipe inlet. This value is defined as the following two terms in the energy equation (z1ρ1g + p1). It has NO bearing on the flow or the static pressure or stagnation pressure that will be observed. To avoid confusion it is recommended that you do not display this value.

In Specific Heat Capacity: This is the specific heat capacity of the fluid at the pipe inlet at the calculated operating temperature and pressure conditions.

In Stagnation Pressure: The stagnation pressure at the pipe inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing gas would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy. In some literature texts stagnation pressure is also called total pressure or dynamic pressure.

In Stagnation Temperature: This is the stagnation temperature at the pipe inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the pipe inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a pipe is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the pipe inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Vapor Pressure: The vapor pressure at the pipe inlet. This is the pressure of the vapor in equilibrium with the non vapor phase.

In Vapor Quality: This is the mass fraction of vapor at the pipe inlet conditions. It can change as the fluid flows down the pipe as the vapor phase condenses (or the liquid phase boils). Mathematically

X1 = MG / MG + ML

In Velocity: The velocity at the pipe inlet. For gases, velocity increases as the fluid moves down the pipe. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows down a pipe, for example cooling of a liquid.

In Velocity Pressure: This is the inlet pressure exerted by the kinetic energy of the fluid. In mathematical terms

0.5r1v12

In Viscosity: The fluid dynamic viscosity at the inlet conditions. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.

Inside Film Coefficient: If the Heat Loss Model is set to "Do Heat Loss Calculation", then an additional row will appear in the results table showing the inside film heat transfer coefficient. The larger the value the less the resistance to heat transfer.

Insulation Coefficient: If the Heat Loss Model is set to "Do Heat Loss Calculation", then an additional row will appear in the results table showing the heat transfer coefficient of any insulation layer. If the pipe is uninsulated (as in Figure 1 above), then the heat transfer coefficient is infinite and a value of NAN (Not A Number) is displayed.

Joule–Thomson Coefficient: The Joule–Thomson (J-T) effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Note, FluidFlow includes the Joule–Thomson effect in pipes where the Heat Loss Model is set to "Ignore Heat Loss/Gain". Users have the option of including/excluding the J-T effect when a pipe heat loss model is set to "Fixed Transfer Rate" or "Do Heat Loss Calculation". You can review these settings in the program by selecting: Options | Calculation | Gas tab. For further information refer to the following section: Contents | User Interface - Menus & Dialogs | Dialogs | Calculation Options Dialog.

Loss Correlation: This is a description of the loss calculation method used to calculate the friction loss.

Max Deposition Velocity: The maximum deposition velocity is the maximum value of the deposition velocity, which occurs at the critical concentration. The values of the maximum stationary deposit velocity and the critical deposit concentration, provide a reference point from which the stationary deposition velocity can be calculated at any other concentration.

Note, if a value for Max Deposition Velocity is not provided when modelling a slurry using the Liu Dezhong method, the slurry may in fact be a non-settling type in which case, further information in the form of laboratory rheology data should be obtained for the slurry. This will help characterize the slurry allowing users to select the most appropriate modelling approach.

Oroskar and Turian Critical Velocity: Minimum velocity demarcating flows in which solids form bed at the pipe bottom from fully suspended flows. Typically applied for uniformly sized particles sized 100 microns and larger.

Out Cross Sectional Flow Area: This is the calculated inside pipe cross sectional area at the pipe outlet.

Out Density: The fluid density at the outlet conditions. Density depends on temperature and pressure of the fluid. From V3.23.1 onwards FluidFlow displays static density at known flow or known pressure boundaries and static density at all other elements.

Out Fluid Phase: The phase state at the pipe outlet.

Out Gas Superficial Velocity: This is the vapor superficial velocity at the pipe outlet conditions. The vapor superficial velocity is the velocity that would occur if the gas alone flows in the pipe. Mathematically

VsG = QG/Ap

Out Liq Superficial Velocity: This is the liquid superficial velocity at the pipe outlet conditions. The liquid superficial velocity is the velocity that would occur if the liquid alone flows in the pipe. Mathematically

VsL = QL/Ap

The velocity for two phase flow is a summation of the liquid and gas superficial velocities:

Vm = VsL + VsG

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within a pipe. The velocity of sound is a thermo physical property and depends on temperature and pressure.

Out Piezometric Pressure: The piezometric pressure at the pipe outlet. This value is defined as the following two terms in the energy equation (z2ρ2g + p2). It has NO bearing on the flow or the static pressure or stagnation pressure that will be observed. To avoid confusion it is recommended that you do not display this value.

Out Specific Heat Capacity: This is the specific heat capacity of the fluid at the pipe outlet at the calculated operating temperature and pressure conditions.

Out Stagnation Pressure: The stagnation pressure at the pipe outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing gas would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy. Sometimes called dynamic or total pressure.

Out Stagnation Temperature: This is the stagnation temperature at the pipe outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the end of the pipe. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a pipe is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the pipe outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Vapor Pressure: The vapor pressure at the pipe outlet. This is the pressure of the vapor in equilibrium with the non vapor phase.

Out Vapor Quality: This is the mass fraction of vapor at the pipe outlet conditions. It can change as the fluid flows down the pipe as the vapor phase condenses (or the liquid phase boils). Mathematically

X2 = MG / MG + ML

Out Velocity: The velocity at the pipe outlet. For gases, velocity increases as the fluid moves down the pipe. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows down a pipe, for example cooling of a liquid.

Out Velocity Pressure: This is the outlet pressure exerted by the kinetic energy of the fluid. In mathematical terms

0.5ρ2v22

Out Viscosity: The fluid dynamic viscosity at the outlet conditions. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.

Outside Film Coefficient: If the Heat Loss Model is set to "Do Heat Loss Calculation", then an additional row will appear in the results table showing the outside film heat transfer coefficient.

Outside Surface Temperature: If the Heat Loss Model is set to "Do Heat Loss Calculation", then an additional row will appear in the results table showing the temperature of the outside surface of the pipe wall. If there is insulation on the pipe this temperature refers to the temperature at the outside surface of the insulation.

Pipe Wall Coefficient: If the Heat Loss Model is set to "Do Heat Loss Calculation", then an additional row will appear in the results table showing the pipe wall heat transfer coefficient. For metallic pipes this value is very high i.e., the resistance to heat transfer due to the pipe wall is usually insignificant when compared to the other resistances to transfer.

Pseudo-homogeneous Component Friction Loss Contribution: Incremental pressure drop in height of standard water per length of pipe caused by particles sized between 40 um x 2.650 / Ss and 200 microns.

Pseudo-homogeneous Component Volume Fraction, Cvp: Volumetric solids concentration of particles sized between 40 um x 2.650 / Ss and 200 microns.

Reynolds Number: This is a measure of the ratio of inertial forces to viscous forces in the flowing fluid. Reynolds number refers to the conditions at the pipe inlet. Reynolds number is used to determine flow regime, which determines the friction factor relationship. Mathematically Reynolds Number is defined as:

Re = ρ1v1D/μ1

For Non-Newtonian fluids the Reynolds number definition may vary from the above equation.

Schiller and Herbich Minimum Velocity: Slurry velocity at which friction loss is at the minimum and commonly used in Alumina industry.

Size: This is the exact inside pipe diameter corresponding to the actual pipe selected on the Input tab. It is this diameter that is used in the calculations.

Sizing Pressure Gradient: This describes the design rate-of-change in pressure across the length of pipe/duct as set by the engineer on the Input tab.

Sizing Velocity: This is the "Design Velocity" value as set by the engineer on the Input tab.

Slope Angle: Pipe angle of inclination referenced to the defined length and elevation differential of connected nodes.

Slurry Velocity Ratio: Ratio of pipe velocity over deposition velocity (Vsm).

Specific Energy: This is a measure of the energy required to move a given quantity of slurry over a given distance. The specific energy consumption can be used to compare the merits of different transport systems and is a useful tool for selecting pipe size. Mathematically, SEC is pressure loss per unit length divided by (solids specific gravity x delivered solids volumetric concentration).

Stagnation Pressure Loss: This is the difference between the inlet and outlet stagnation pressures. For liquids flowing isothermally in a horizontal pipe this will be the same as the static loss and the friction loss. The results shown in Figure 1 above are for a pipe whose end elevation is 2m above the start elevation.

Static Pressure Loss: This is the difference between the inlet and outlet static pressures. For liquids flowing isothermally in a horizontal pipe this will be the same as the stagnation loss and the friction loss. For gases and 2-phase mixtures, velocities increase as the gas flows down and so static losses become greater than stagnation or friction losses.

Stratification Ratio Exponent (M): Exponent in stratification ratio equation. Refers to the slope of the line generated at the heterogeneous flow regime log-log plot of relative solids effect and flow velocity.

Stratified Component Friction Loss Contribution: Incremental pressure drop in height of standard water per length of pipe caused by particles sized at least 0.015D.

Stratified Component Volume Fraction, Cvs: Volumetric solids concentration of particles sized at least 0.015D.

Thomas 1979 Model Vsm: Maximum deposition limit velocity (Vsm) for particles 70 microns and smaller.

Thomas 2015 Model Vsm: Modified Wilson and Judge 1976 Maximum deposition limit velocity (Vsm) model developed to improve the predictability of the previous model in pipes of large diameters.

V50: Slurry flow velocity wherein 50% of particles are suspended by carrier turbulence while the other half is transported as contact load.

Wall Shear Stress: This value represents the shear stress in the layer of flowing fluid at the pipe wall. Numerically equal to D ΔP/4L where D is the internal pipe diameter, L is the pipe length and ΔP is the pressure drop. It has units of pressure.

Wilson 1992 Model Vsm: Maximum deposition limit velocity (Vsm) determined using the WASC generalized relationship. Maximum applicable Vsm value.

Wilson and GIW Model Vsm: Maximum deposition limit velocity (Vsm) model typically applied for solids with d50 size 150 microns and larger.


Result Charts

Navigation: Components > Pipes >

Return to chapter overview

Result Charts - Pipes

For pipe results there are 10 different types of chart available. The availability of each chart depends on the fluid phase state.

For all phase states a resistance chart is available. This shows the pipe friction loss at various flows. Figures 1 to 3 show examples for different fluids.

Charts Slurry Resistance

Figure 1: Pipe friction loss for a Newtonian fluid Figure 2: Pipe friction loss for a settling slurry

Figure 3: Pipe friction loss for a Non Newtonian fluid

For gas flows the velocity, static pressure, static temperature and static density can vary significantly as the vapor flows down the pipe. Figs 4 to 7 show these properties as a function of pipe length.

Charts Gas Density Charts Gas Static Pressure

Figure 4: Gas static density with position Figure 5: Gas static pressure with position

Charts Gas Velocity Charts Gas Static Temperature

Figure 6: Pipe velocity increase Figure 7: Gas static temperature decrease with position

For two phase flow the flow pattern map and the variation of quality with pipe length can also be considered.

flow pattern map Charts Vapor Quality

Figure 8: Flow Pattern Map (Friedel) Figure 9: Vapor mass fraction increasing with pipe length

Hydraulic and Energy Grade Line Charts

FluidFlow allows users to graphically represent the level of energy in a piping system by means of the Energy (EGL) and Hydraulic (HGL) Grade Lines. These imaginary lines allow the engineer to quickly identify any "trouble-spots" in the system (typically points of low pressure).

This graph plot can be developed by selecting the "Tools | Composite Chart Setup..." menu item, then define the start and end boundary nodes for your EGL & HGL plot. Figure 10 provides details of the required information. Note, you can also change the length and head units for the graph plot.

Figure 10: Hydraulic and Energy Grade Line Setup.

egl hgl composite chart setup

Once you have completed the data entry noted in Figure 10, select "Make Plot" and FluidFlow will then develop a graph plot which should appear as set out in Figure 11.

Figure 11: Sample Energy and Hydraulic Grade Line Chart.

egl hgl line

The Energy Grade Line (EGL)

The Energy Line is a line that represents the total head available to a fluid. For a fluid flowing without any losses due to friction (major losses) or components (minor losses) - the energy line would be at a constant level. In practice, the energy line decreases along the flow due to various energy losses.

The EGL is formed by the locus of points a distance v2/2g above the HGL, or a distance v2/2g + P/ρg + z above a pre-selected datum.

The Hydraulic Grade Line (HGL)

The Hydraulic Grade Line is a line representing the total head available to the fluid - minus the velocity head. If a pipe is under pressure, the hydraulic grade line is that level water would rise to in a small, vertical tube connected to the pipe.

The following tips are useful when plotting the HGL & EGL graph:

1. As the velocity reaches zero, the HGL and EGL merge.

2. Both the HGL and EGL slope downwards in the direction of flow due to head loss in the system.

3. An abrupt change occurs in the HGL and EGL whenever a loss occurs due to a sudden geometry change, i.e., a valve or a reducer/expander.

4. A "pitch" occurs in a HGL and EGL whenever energy is added to a fluid, e.g. a pump. A dip will occur when energy is extracted from the system, e.g. a turbine.

5. When the HGL passes through the centerline of a pipe, the pressure is zero. If the pipe lies above the HGL, there is vacuum in the pipe

The HGL is formed by the locus of points a distance P/ρg above the center of a pipe or P/ρg + z above a pre-selected datum.


Calculation Methods

Navigation: Components > Pipes >

Return to chapter overview

Calculation Methods - Pipes

It is not the intention in this section to provide detailed derivations or detailed explanations. You are referred to the many texts in the Reference Literature chapter to fill in the detail.

Fluid Mechanics is based on the fundamental principles of conservation of mass, energy and momentum. When a fluid flows through a pipe a pressure loss is experienced. For all phase states the total pressure loss can be expressed mathematically as:

ΔPtot = (ρ1U1+ z1ρ1g + p1 + 0.5N1ρ1v12) - (ρ2U2+ z2ρ2g + p2 + 0.5N2ρ2v22) Equation 1

FluidFlow works internally with total pressure losses, the calculation methods used within FluidFlow do not assume that energy is dissipated and so there is a need to keep track of total energy. In compressible, non isothermal liquid flow and two phase flow energy is transformed between the various forms of Equation 1, which means that a continuous energy balance is required throughout the system.

Incompressible Newtonian Liquid

For flow of an incompressible Newtonian liquid in a pipe, when the friction model is set to Moody (default setting), the friction loss is calculated according to the Darcy-Weisbach equation: (for liquid flow in a horizontal pipe, with no temperature change, and neglecting compressibility effects the friction loss and total pressure loss are equal).

ΔPfric = 0.5fDLρv2/D

If the friction model is set to Shell-MIT, friction loss is calculated according to the Shell-MIT equations. The solution approach uses a modified Reynolds Number which is a multiple of the normal Reynolds Number. Using the modified Reynolds Number, the friction factor is calculated depending on whether the flow is laminar or turbulent.

Rm = Reynolds Number/7742.

f = 0.00207 / Rm where the Reynolds Number is in the laminar region, i.e., lower than 2100.

f = 0.0018 + 0.00662 * (1 / Rm)0.355 where the Reynolds Number is in the turbulent region, i.e., higher than 2100

Pm = 6.2191x1010 * f * Sg * Q2 / D5 (SI Units).

where:

f is the friction factor.

Q is the flow rate (m3/h).

Sg is the specific gravity of the fluid.

D is the internal pipe diameter (mm).

Compressible Fluid (Gas or Vapor)

For flow of a compressible fluid (gas or vapor) in a pipe the Darcy-Weisbach equation is not applicable because both density and velocity change as the fluid flows down the pipe. For gas flow friction loss is never equal to total loss, because velocities and densities in and out of the pipe are always different. An approach often used in the literature is to assume ideal gas laws so that analytical equations can be derived. In many industrial processes significant departures from the ideal gas laws exist.

Rather than make simplifying assumptions, FluidFlow uses a calculation procedure that solves the conservation equations together with an equation of state for small pipe increments. This means that we cannot provide an analytical expression for pipe friction loss. To help understand the solution process consider the following description:

1. A pipe increment is selected based on a small change in fluid static density ρ1 and ρ2. The length of this increment is not yet known.

2. The following upstream properties are calculated:

Velocity, v1 = G/ρ1

Static temperature, T1 = T01 - 0.5v12/Cp1

Static pressure P1 = P01 - 0.5ρ1v12

Upstream stagnation enthalpy is obtained from the equation of state, knowing the upstream stagnation temperature, T0 and pressure P0.

3. Downstream stagnation enthalpy is calculated (any heat transfer is included at this stage). From the downstream stagnation enthalpy the downstream static temperature, T2 is calculated.

4. From the downstream static temperature, T2 and density, ρ2 the equation of state is back solved to provide the downstream static pressure, P2. FluidFlow can use either Peng Robinson, Benedict Webb Rubin, or Lee Kesler equations of state.

5. An incremental form of the momentum equation (equation 1) is used to calculate the length of this pipe segment:

ΔLsegment = (p1 - p2 - 2DρAvG2/(1/ρ1 - 1/ρ2)) / (fDG2)

6. Steps 1 to 5 are repeated until the end of the pipe is reached. The incremental length step size therefore shortens as the calculation moves down the pipe. For the last segment, which will never be the exact length required, we use interpolating functions based on results from previous segments.

This basis of this method was originally developed for calculating high speed gas flows in pressure relief lines [6].

The Joule–Thomson Coefficient

The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS

to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H.

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Non-Newtonian or Non-Settling Slurry

For flow a non-Newtonian or non-settling slurry in a pipe, the friction floss is calculated from the Darcy - Weisback equation:

However, estimation of friction factor is not the same with how Newtonian flow systems are determined. Instead, it is based on the rheology data used to describe the viscosity as a function of shear rate.

For flow of settling slurries in a pipe, the concept of additive pressure drop is applied.

That is, the total friction loss for a slurry system is equal to the sum of the friction loss from the fluid alone and the additional pressure drop due to the presence of solid particles.

This is represented by the following equation:

Wherein the variable "phi" is determined using any of these empirical relationships:

·Durand

·Wasp

·Wilson, Addie, Sellgren and Clift (WASC)

·Sellgren, Wilson Four-Component Model

·Liu Dezhong

·Vsm

·V50

·4CM

Two Phase

For flow of two phase mixtures in a pipe the friction loss can be calculated by a number of ways. The actual method used is set from the Calculation Options Dialog.

The calculation of frictional pressure loss for two phase gas-liquid flow is complex. The coexistent flow of two phases complicates the theoretical and empirical approaches available, this means that a complete analytical solution is not possible. After 60 years of extensive research it is rare to find two correlations with exact predictions. In an effort to overcome these shortcomings FluidFlow provides six correlations that represent some of the most successful approaches to this complex problem.

The pressure gradient (ΔP/L) for two phase flow is not constant but varies along the pipe as a function of temperature and pressure. This means that the pressure drop must be calculated by integrating the pressure gradient along the pipe. The calculation approach used by FluidFlow is similar to that used in compressible flow calculation. The following steps are made:

1. A pipe increment is selected based on a small change in pressure P1 and P2. The length of this increment is not yet known.

2. Determine the upstream temperature, pressure, quality and physical properties. Physical properties for each phase and the mixture physical properties are needed.

3. Make a flash calculation to determine the downstream quality.

X2 = X1 + Cp(T1-Tb)/Hv

4. From the downstream properties determine the flow regime and then determine the incremental length of this segment. Determination of the incremental length depends on the calculation method used. The equations used are:

Friedel: ΔLsegment = (P1 - P2)D5ρL/(CCfLΦm2)

where

CC is a constant

ρL is the average liquid density over the increment

fL is the liquid phase friction factor

Φ is the Friedel correction factor. See [10] for further explanations.

m is the mass flow

Beggs Brill: ΔLsegment = (P1 - P2)D5ρmix/(CCfTPm2)

where

CC is a constant

ρmix is the two phase mixture density over the increment. See [3] for further explanations.

fTP is the two phase friction factor. See [3] for further explanations.

m is the mass flow

Drift Flux: ΔLsegment = (P1 - P2)D5ρmix/(CCfTPm2)

where

CC is a constant

ρmix is the two phase mixture density over the increment. See [11] for further explanations.

fTP is the two phase friction factor. See [11] for further explanations.

m is the mass flow

Muller Steinberg Heck: ΔLsegment = (P1 - P2) / (ΔPL+2(ΔPG-ΔPL)Xav(1-Xav)0.3333) + ΔPGXav3)

where

ΔPG is the liquid phase pressure loss over the increment. See [12] for further explanations.

ΔPL is the liquid phase pressure loss over the increment. See [12] for further explanations.

Xav is the average vapor quality for the segment.

For both Lockhart Martinelli and Chisholm Baroczy correlations the equations are identical to the Beggs Brill equation with the addition of a two phase multiplier. See [10] for further explanations.

5. Steps 1 to 4 are repeated until the end of the pipe is reached. The incremental length step size therefore shortens as the calculation moves down the pipe. For the last segment, which will never be the exact length required, we use interpolating functions based on results from previous segments.

Pipe Heat Transfer

For heat transfer through a pipe wall with or without insulation, FluidFlow uses an iterative solution to solve for an incremental pipe length:

Q/L = Σ ΔT / (Ri + Rw + RLAG + Ro)

where:

Ri: is the inside film resistance and Ri = 1 / (Hi π Di) where Hi is the inside film coefficient of heat transfer..

Rw is the wall resistance and Rw = Xw / (Kw π Dw) where Xw is the pipe wall thickness, Kw is the thermal conductivity of the pipe wall and Dw is the log mean diameter of the pipe wall.

RLAG: is the lagging/insulation resistance and RLAG = XL / (KL π DL) where XL is the insulation thickness, KL is the thermal conductivity of the insulation material and DL is the log mean diameter of the insulation.

Ro: is the outside film resistance and Ro = 1 / (Ho π Do) where Ho is the outside film coefficient of heat transfer. The mechanism of heat transfer by radiation is superimposed on that of heat transfer by convection. FluidFlow therefore calculates the individual convection and radiation coefficients which are then summed to give a combined outside/surface film coefficient, i.e., Ho = hrad + hconv.

Outside Film Radiation Heat Transfer

The outside film radiation heat transfer coefficient is calculated from the equation:

hrad = (σ)(e)(Tfluid)4 - (TAmbient)4) / (Tfluid - TAmbient).

where:

hrad is the radiation heat transfer coefficient (W/m2 K).

σ is the Stefan-Boltzman constant (5.67 x 10-8 W/m2 K4).

e is the surface emissivity.

Tfluid is the temperature of the flowing fluid (K).

TAmbient is the local ambient air temperature (K).

Outside Film Convection Heat Transfer Coefficient

The outside film convection heat transfer coefficient can be calculated from using either the equations based detailed in ASTM Standard C680 or by using the equations detailed in the VDI Wärmeatlas. You can choose your preferred method by selecting: Options | Calculation | Global Settings.

ASTM Standard C680

When applying this method for above-ground pipelines, the outside film convection heat transfer coefficient is calculated as follows

hconv = C (1/do) 0.2 x (1/Tavg) 0.181 x (Ts - TAmb) 0.266 x (1 + 1.277 (Wind)) 0.5.

where:

hconv is the convective heat transfer coefficient (W/m2 K).

C is the constant depending of shape and heat flow direction (1.016 for horizontal pipes and 1.235 for vertical pipelines).

do is the outer diameter (including insulation if present).

Tavg is the average air film temperature, average of outside and ambient temperatures (oC).

Ts is the outside surface temperature (oC).

TAmb is the ambient temperature (oC).

Wind is the wind speed (mph).

VDI Wärmeatlas

When applying this method for above-ground pipelines, the outside film convection heat transfer coefficient is calculated as follows:

U = 1 / [Di/D*hin] + [Di*ln(Do/D)/2*kPipe] + [Di*ln(Di/Do)/2*kInsulation] + [1/hair]

where:

Di is the outside diameter of the pipe insulation (if included in the design).

D is the inside diameter of the pipe.

hin is the inside surface heat transfer coefficient for the pipe.

Do is the outside diameter of the pipe.

kPipe is the thermal conductivity of the pipe.

kInsulation is the thermal conductivity of the insulation.

hair is the heat transfer coefficient of air at the outside surface of the pipe.

Further information on the terms of the above equation is available in the VDI Wärmeatlas.

Buried Pipe Heat Transfer

FluidFlow splits each pipe into segment lengths and calculates the overall heat loss coefficient from the equation:

Uoverall = 1 / Rt where Rt is the sum of the resistances to heat transfer which are:

Rt = Ri + Rw + Rcoating + Rinsulation + Rbackfll + Rsoil.

The resistance terms outlined in the above equation refer to the resistance of the pipe inside film, pipe wall, pipe coating, pipe insulation, backfill and soil respectively.

Then for each segment:

t2 = t1 - U A ΔT / (w Cp) where t1 is initial temperature, U is overall coefficient and is 1/Rt, A is heat transfer area, ΔT is temperature driving force (pipe outside wall temperature - ambient soil temperature), w is mass flow through the pipe and Cp is the fluid specific heat capacity.


Boundaries

All fluid networks have start and end points. These "points" are called boundaries within the concept of FluidFlow. Boundaries are therefore the points where the model starts and terminates.

Correct selection of model start and end boundaries is a simple skill you should know in order to build your model.

FluidFlow has many types of boundaries available. Generally at a network boundary you will either know (or have as a design goal) either the pressure or the flowrate.


Known Pressure

Known Pressure (or Assigned Pressure) KnownPressure elements are entry or exit network points where the pressure is known or is a design condition.

The flow direction to a Known Pressure component depends on the network system and is determined by FluidFlow. It is only possible to make one pipe connection to this type of component. Known Pressures can be used to represent tanks or vessels or any point in a network where a fluid leaves or enters.

FluidFlow calculates the flow into or out of this element.


Data Entry

Navigation: Components > Boundaries > Known Pressure >

Return to chapter overview

Data Entry - Known Pressure

With known pressure elements we need to set all properties that define the fluid phase state. In practice this means the rows shown in the Input Editor in Figure 1:

Figure 1: General Known Pressure input requirements.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the known pressure element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For known pressure elements there are 2 possible status values. On; Off. On is the normal position and tells the application that this node is open and to calculate the flow into or out of the element. Off means that this component is closed to flow. You can close known pressures to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the known pressure measured from the datum. If you are using this type of node to model a storage tank or any other vessel, you can either enter the liquid height (relative to the datum) directly into the elevation row. As an alternative you can enter the elevation to the base of the vessel then add the liquid height into the pressure field, using units of m Fluid. The end result is the same.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Pressure Model: This determines if the set pressure refers to stagnation or static pressure. Stagnation pressure is generally used to represent vessels, tanks, reservoirs. To represent a boundary in a pipe, static pressure may be useful, because this is normally the reading from a pressure gauge.

Design Note: In FluidFlow, Stagnation Pressure is the sum of the Static and Velocity Pressure.

Pressure: This sets the overpressure in the vessel or tank. Atmospheric pressure is a typical value, but the vessel may also be over or under atmospheric pressure. You can also use this field to enter any liquid height that the vessel may contain. For example, if the liquid contains 1 m of liquid and is at atmospheric pressure you can enter a pressure of 1 m Fluid g. If you use this approach then elevation should be measured to the vessel base.

Pressure Unit: This is the pressure (or head) unit that you use to define the known pressure. You can use head or pressure units both gauge and absolute. Gauge units end with a "g" and absolute units end with an "a", for example 200 kPa g means 200 KPa above atmospheric pressure.

Temperature: This is the temperature of the fluid at the known pressure boundary.

Temperature Unit: Refers to the unit of temperature that is used to specify the temperature value.

Fluid: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the fluids database via the Select Fluid dialog. There are over 1200 fluids in the standard database.

Fluid Type: This row may not appear in your version. It only appears if you have the Non-Newtonian/Slurry or Two-Phase module activated. The possible selections are: 1) Newtonian/NN-Non Settling, 2) Heterogeneous Settling, 3) Pulp/Paper Stock and 4) Two Phase.

Selecting Newtonian/NN-Non Settling does not require any additional data entry concerning the fluid. You can make Non-Newtonian Non Settling calculations by selecting the appropriate fluid from the Select Fluid dialog.

Selecting Heterogeneous Settling means that you can use a settling slurry as the fluid. If you make this selection then the rows as shown in Figure 2 appear:

Known Pressure Input Editor1

Figure 2: Additional data requirement for a Heterogeneous Settling Slurry

Solids: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a solid from the solids database via the Select Solid dialog.

Concentration Defined By: There are two possible values for this entry: Cw Weight %; Cv Volume %. This row works together with the Solids Concentration % row. If you select Cw Weight % then you can define the solids concentration of a slurry as a weight percent. If you select Cv Volume % then you can define the solids concentration of a slurry as a volume percent. The carrier fluid is defined in the Fluid row.

Include Size Distribution: There are two possible states for this entry: Yes; No. If you select No then you will need to enter the d50 and d85 particle sizes. Note that these are the only two particle sizes that are used in the Durand or WASC (Wilson, Addie, Sellgren and Clift) correlations, so even if you enter particle size distribution data it will not be used unless you select the WASP calculation methods. Calculation methods are selected from the Calculation Options Dialog.

d50: d50 is the mass mean particle diameter. This is the diameter at which 50% of the sample's mass is composed of smaller particles.

d85: d85 is the particle diameter for which 85%, by mass, of the particles are finer. This is therefore the diameter at which 85% of the sample's mass is composed of smaller particles.

d50/d85 Size Unit: This entry defines the unit of length used to define the particle size diameters.

If you select Yes to Include Size Distribution, then the following rows appear as shown in Figure 3:

Known Pressure Input Editor2

Figure 3: Additional particle size data required for Include Size Distribution = Yes.

% #xxMesh (.yyymm): For each entry, set the solid percent left on the sieve after a sieve analysis. #xx refers to the mesh size and .yyy represents the mesh size in mm.

Selecting Two Phase for the row Fluid Type allows you to enter the initial Quality as shown in Figure 4.

Known Pressure Input Editor3

Figure 4: Additional data required for a Two Phase fluid.

Quality (0..1): This is the vapor quality of the two phase mixture at the known pressure boundary. Quality is the mass fraction of vapor in the two phase mix. 0 means that the phase state is liquid and 1 means that the phase state is vapor. This means your entry should be greater than 0 and less than 1.

Selecting Pulp/Paper Stock for the row Fluid Type allows you to enter the Wt% Oven Dry Concentration as shown in Figure 5.

Known Pressure Input Editor4 PulpPaper

Figure 5: Additional data required for a Pulp/Paper Stock.

Wt% Oven Dry Concentration: This denotes the % composition of pulp/paper stock in the fluid with the remainder being made up of the carrier fluid. Note, the available pulp and paper calculation methods are only recommended for use in the 0.9 to 6 % (Moller) or 2 to 6 % (TAPPI) consistency range. If you wish to model a consistency value outside the noted range values, you may lose accuracy.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boundaries > Known Pressure >

Return to chapter overview

Result Table - Known Pressure

The available results for a known pressure node are the same for each possible phase state. Possible results are shown below:

Figure 1: Available results for a known pressure node.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition. FluidFlow determines the composition of the fluid that is leaving a network, because this is determined by the component mass balance across the network. If the calculated flow direction at a known pressure is into the network then the Composition Mass % is equal to that of the fluid specified in the Input Editor.

Density: The fluid density at the known pressure node. Density depends on temperature and pressure of the fluid. Stagnation density is shown at this type of boundary.

Element Type: The name used by FluidFlow to describe this element.

Flow: This is the flow that FluidFlow has calculated will be flowing either into or out of the node.

Fluid Phase: The phase state that exists at the known pressure node.

Solids Delivered: This result is only available for settling slurries and represents the delivered flow rate of solids which is automatically calculated by FluidFlow. This can be viewed for all system outlet points and can be useful when developing initial project feasibility studies.

Specific Heat Capacity: This is the calculated specific heat capacity of the fluid at the operating temperature and pressure conditions.

Stagnation Pressure: The stagnation pressure at the known pressure node. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). At boundaries where velocity is often negligible (i.e. vessels or reservoirs) static and stagnation pressures will be identical. For inflows and outflows this is equal to the pressure specified in the Input Editor. For gas flow out of the network at the known pressure node, it is possible that the actual pressure is above the pressure specified via the Input Editor. This will occur if the gas velocity is at sonic velocity as it leaves the network. FluidFlow always warns in this situation.

Static Pressure: The pressure that can be identified for every point in a body of fluid, regardless of whether the fluid is in motion or not.

Temperature: This is the stagnation temperature at the known pressure node. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy. At boundaries where velocity is often negligible (i.e., vessels or reservoirs) static and stagnation temperatures will be identical. For calculated flows into the network the temperature will be the temperature specified via the Input Editor. For outflows FluidFlow determines the temperature from the system energy balance.

Viscosity: The fluid dynamic viscosity at the known pressure node. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.


Result Charts

Navigation: Components > Boundaries > Known Pressure >

Return to chapter overview

Result Charts - Known Pressure

When modelling settling slurries, FluidFlow automatically generates a Rosin-Rammler particle size-distribution plot based on the solids data entry in the Input Editor. The graph plot shows Cumulative % Passing vs. Particle Size. Figure 1 provides an illustration of this graph plot.

Figure 1: Rosin-Rammler particle size-distribution plot.

Note, the Rosin-Rammler (R-R) curve in FluidFlow is curve-fitted to the PSD defined by the user on the Input tab of the Data Palette. The curve is bound by the requirements/limits of the R-R curve equation and as such, if we define a range of PSD data which doesn't fit exactly to the curve, the curve created in FluidFlow may not intersect the data-points. The accuracy of the R-R curve in the software can also be affected if a limited range of % retained PSD data is defined, for instance from 65 to 95%. This means that in FluidFlow, we need a wider range of particle %, i.e. from say 5 or 10% to 100% approx.

Particle Data:

In the case of defining only a d50 and d85 particle sizes, the same is true, i.e. the Rosin-Rammler curve is bound by the requirements/limits of the R-R curve equation.

It's important to note that the modeling approach used is to an extent dependent on the slurry/solid data available. For instance, if you only have d50 data, then the Durand method would be used as this method only uses the d50 value.

If you only have d50 and d85 data, then you can use either the Durand or WASC method. WASC uses both d50 and d85 in the solution.

Note, when using the above approaches, FluidFlow automatically develops the Rosin-Rammler curve. If the data-points offer a good representation for a Rosin-Rammler curve, this means you have the additional option of using the equations which use PSD data (Liu Dezhong, 4-Component Model, WASP) and the PSD data used would be sourced from the R-R curve developed. If however the Rosin-Rammler curve isn't such a good representation, then we are restricted to using either the Durand or WASC methods.

If you want to use the equations which use PSD data (Liu Dezhong, 4-Component Model, WASP), it's recommended that a full range of PSD data is obtained for the slurry/solids. This data can then be used in FluidFlow.


Calculation Methods

Navigation: Components > Boundaries > Known Pressure >

Return to chapter overview

Calculation Methods - Known Pressure

There are no specific calculations at known pressure boundaries.

FluidFlow always calculates the flow that will be achieved at the known pressure and the flow direction.

If the flow is into the network then temperature and mass composition values that you specified via the Input Editor will exist at this point.

If the calculated flow direction is out of the network, then the fluid temperature and mass composition is calculated from application of the conservation laws.


Known Flow

Known Flow (or Assigned Flow) KnownFlow elements are entry or exit points in a fluid network where the flow is known or is a design condition.

The flow direction of a Known Flow node/element is specified by the user via the Input Editor.

FluidFlow calculates the pressure required to provide this flow or the pressure that will be available.


Data Entry

Navigation: Components > Boundaries > Known Flow >

Return to chapter overview

Data Entry - Known Flow

With known flow elements we need to set all properties that define the fluid phase state and the flow direction. In practice this means the rows shown in the Input Editor in Figure 1:

Known Flow Input Editor1

Figure 1: General Known Flow Input Requirements.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the known flow element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For known flow elements there are 2 possible status values. On; Off. On is the normal position and tells the application that this node is open and to calculate the pressure into or out of the element. Off means that this component is closed to flow. You can close known flow elements to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the known flow measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Flow Direction: There are 2 possible values for this entry: Out of Network; Into Network. If Out of Network is selected this means that the only additional data required is the specified flow. For this option FluidFlow calculates the delivery pressure, temperature, phase state and fluid composition. If Into Network is selected then additional data is required. The additional data requirement is shown in Figure 2.

Flow: This is the specified flow from or into the network. You can enter either a volumetric flow or mass flow. For gases, if you enter a volumetric flow, FluidFlow uses either volumetric flow referenced to STP or NTP conditions. This is determined by the settings you have in the Calculation Options.

Flow Unit: This is the unit of flow used to specify the flow at this boundary.

If Flow Direction is set to Into Network then additional rows appear as shown in Figure 2

Known Flow Input Editor2

Figure 2: Additional data requirements needed if Into Network is selected as the Flow Direction option.

Temperature: This is the temperature of the fluid at the known flow boundary.

Temperature Unit: Refers to the unit of temperature that is used to specify the temperature value.

Fluid: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the fluids database via the Select Fluid dialog. There are over 1200 fluids in the standard database.

Fluid Type: This row may not appear in your version. It only appears if you have the Non-Newtonian/Slurry or Two-Phase module activated. The possible selections are: 1) Newtonian/NN-Non Settling, 2) Heterogeneous Settling, 3) Pulp/Paper Stock and 4) Two Phase.

Selecting Newtonian/NN-Non Settling does not require any additional data entry concerning the fluid. You can make Non-Newtonian Non Settling calculations by selecting the appropriate fluid from the Select Fluid dialog.

Selecting Heterogeneous Settling means that you can use a settling slurry as the fluid. If you make this selection then the rows as shown in Figure 3 appear:

Known Pressure Input Editor1

Figure 3: Additional data requirement for a Heterogeneous Settling Slurry.

Flow Defined By: There are three possible values for this entry: 1) Total Slurry Flow 2) Solids Only 3) Carrier Only.

1) Total Slurry Flow: This indicates that the flow rate you have entered under the field titled "Flow" is the total system flow rate inclusive of particles and carrier fluid.

2) Solids Only: This indicates that the flow rate you have entered under the field titled "Flow" is the flow rate for the solids only, i.e., exclusive of carrier fluid.

3) Carrier Only: This indicates that the flow rate you have entered under the field titled "Flow" is the flow rate for the carrier fluid only, i.e., exclusive of solids.

FluidFlow will automatically calculate the individual composition mass % and flow rate for the solids and carrier fluid for all three options noted above based on the defined solids concentration, etc. If you wish to view the flow rate of delivered solids for any of these options, select the boundary nodes which denote the various system outlets and view the results tab for each. Further information on this is available at: Boundaries | Known Flow | Results Table.

Solids: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a solid from the solids database via the Select Solid dialog.

Concentration Defined By: There are two possible values for this entry: Cw Weight %; Cv Volume %. This row works together with the Solids Concentration % row. If you select Cw Weight % then you can define the solids concentration of a slurry as a weight percent. If you select Cv Volume % then you can define the solids concentration of a slurry as a volume percent. The carrier fluid is defined in the Fluid row.

Include Size Distribution: There are two possible states for this entry: Yes; No. If you select No then you will need to enter the d50 and d85 particle sizes. Note that these are the only two particle sizes that are used in the Durand or WASC (Wilson, Addie, Sellgren and Clift) correlations, so even if you enter particle size distribution data it will not be used unless you select the WASP calculation methods. Calculation methods are selected from the Calculation Options Dialog.

d50: d50 is the mass mean particle diameter. This is the diameter at which 50% of the sample's mass is composed of smaller particles.

d85: d85 is the particle diameter for which 85%, by mass, of the particles are finer. This is therefore the diameter at which 85% of the sample's mass is composed of smaller particles.

d50/d85 Size Unit: This entry defines the unit of length used to define the particle size diameters.

If you select Yes to Include Size Distribution, then the following rows appear as shown in Figure 4:

Known Pressure Input Editor2

Figure 4: Additional particle size data required for Include Size Distribution = Yes.

% #xxMesh (.yyymm): For each entry, set the solid percent left on the sieve after a sieve analysis. #xx refers to the mesh size and .yyy represents the mesh size in mm.

Selecting Two Phase for the row Fluid Type allows you to enter the initial Quality as shown in Figure 5.

Known Pressure Input Editor3

Figure 5: Additional data required for a Two Phase fluid.

Quality (0..1): This is the vapor quality of the two phase mixture at the known flow boundary. Quality is the mass fraction of vapor in the two phase mix. 0 means that the phase state is liquid and 1 means that the phase state is vapor. This means your entry should be greater than 0 and less than 1.

Selecting Pulp/Paper Stock for the row Fluid Type allows you to enter the Wt% Oven Dry Concentration as shown in Figure 6.

Known Pressure Input Editor4 PulpPaper

Figure 6: Additional data required for a Pulp/Paper Stock.

Wt% Oven Dry Concentration: This denotes the % composition of pulp/paper stock in the fluid with the remainder being made up of the carrier fluid. Note, the available pulp and paper calculation methods are only recommended for use in the 0.9 to 6 % (Moller) or 2 to 6 % (TAPPI) consistency range. If you wish to model a consistency value outside the noted range values, you may lose accuracy.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 7:

Pipes Input Editor10

Figure 7: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boundaries > Known Flow >

Return to chapter overview

Result Table - Known Flow

The available results for a known flow node are the same for each possible phase state. Possible results are shown below:

Known Flow ResultsTable1

Figure 1: Available results for a known flow node.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Quality: Only appears if two-phase flow exists at the boundary. The quality represents the vapor mass fraction.

Composition Mass %: This is the fluid mass composition. FluidFlow determines the composition of the fluid that is leaving a network, because this is determined by the component mass balance across the network. If the flow direction at a known flow is into the network then the Composition Mass % is equal to that of the fluid specified in the Input Editor.

Density: The fluid density at the known pressure node. Density depends on temperature and pressure of the fluid. Stagnation density is shown at this type of boundary.

Element Type: The name FluidFlow uses to describe the element.

Flow: This is the flow that has been entered via the Input Editor that is flowing either into or out of the node.

Fluid Phase: The phase state that exists at the known flow node.

Solids Delivered: This result is only available for settling slurries and represents the delivered flow rate of solids which is automatically calculated by FluidFlow. This can be viewed for all system outlet points and can be useful when developing initial project feasibility studies.

Specific Heat Capacity: This is the calculated specific heat capacity of the fluid at the operating temperature and pressure conditions.

Stagnation Pressure: The stagnation pressure at the known flow node as the fluid leaves or enters the network. FluidFlow calculates this pressure, which is dependent on the flowrate you have specified. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). At boundaries where velocity is often negligible (i.e., vessels or reservoirs) static and stagnation pressures will be identical. For both inflows and outflows this is equal to the pressure calculated by FluidFlow. For gas flow out of the network at a known flow node, it is possible that the actual flow is below the flow specified via the Input Editor. This will occur if the gas velocity is at sonic velocity as it leaves the network. FluidFlow always warns in this situation.

Static Pressure: The pressure that can be identified for every point in a body of fluid, regardless of whether the fluid is in motion or not.

Temperature: This is the stagnation temperature at the known flow node. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy. At boundaries where velocity is often negligible (i.e., vessels or reservoirs) static and stagnation temperatures will be identical. For flows out of the network the temperature will be that calculated by the energy balance. For inflows FluidFlow uses the temperature entered via the Input Editor.

Viscosity: The fluid dynamic viscosity at the known pressure node. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.


Result Charts

Navigation: Components > Boundaries > Known Flow >

Return to chapter overview

Result Charts - Known Flow

When modelling settling slurries, FluidFlow automatically generates a Rosin-Rammler particle size-distribution plot based on the solids data entry in the Input Editor. The graph plot shows Cumulative % Passing vs. Particle Size. Figure 1 provides an illustration of this graph plot.

Figure 1: Rosin-Rammler particle size-distribution plot.

Note, the Rosin-Rammler (R-R) curve in FluidFlow is curve-fitted to the PSD defined by the user on the Input tab of the Data Palette. The curve is bound by the requirements/limits of the R-R curve equation and as such, if we define a range of PSD data which doesn't fit exactly to the curve, the curve created in FluidFlow may not intersect the data-points. The accuracy of the R-R curve in the software can also be affected if a limited range of % retained PSD data is defined, for instance from 65 to 95%. This means that in FluidFlow, we need a wider range of particle %, i.e. from say 5 or 10% to 100% approx.

Particle Data:

In the case of defining only a d50 and d85 particle sizes, the same is true, i.e. the Rosin-Rammler curve is bound by the requirements/limits of the R-R curve equation.

It's important to note that the modeling approach used is to an extent dependent on the slurry/solid data available. For instance, if you only have d50 data, then the Durand method would be used as this method only uses the d50 value.

If you only have d50 and d85 data, then you can use either the Durand or WASC method. WASC uses both d50 and d85 in the solution.

Note, when using the above approaches, FluidFlow automatically develops the Rosin-Rammler curve. If the data-points offer a good representation for a Rosin-Rammler curve, this means you have the additional option of using the equations which use PSD data (Liu Dezhong, 4-Component Model, WASP) and the PSD data used would be sourced from the R-R curve developed. If however the Rosin-Rammler curve isn't such a good representation, then we are restricted to using either the Durand or WASC methods.

If you want to use the equations which use PSD data (Liu Dezhong, 4-Component Model, WASP), it's recommended that a full range of PSD data is obtained for the slurry/solids. This data can then be used in FluidFlow.


Calculation Methods

Navigation: Components > Boundaries > Known Flow >

Return to chapter overview

Calculation Methods - Known Flow

There are no specific calculations at known flow boundaries.

FluidFlow always calculates the pressure that will be achieved at the known flow and specified flow direction.

If the flow is into the network then temperature and mass composition values that you specified via the Input Editor will exist at this point.

If the specified flow direction is out of the network, then the fluid temperature and mass composition is calculated from application of the conservation laws.


Reservoir

Reservoir Reservoir elements are entry or exit network points where the pressure is known or is a design condition. Similar in concept to known pressure boundaries, reservoirs can have as many pipe connections as desired.

The flow direction to a reservoir component can be different for each pipe connection. Flow direction in each branch depends on system pressures and is determined by FluidFlow. Reservoirs can be used to represent tanks or vessels or any point in a network where a fluid leaves or enters.

For each branch FluidFlow calculates the flow into or out of this element.


Data Entry

Navigation: Components > Boundaries > Reservoir >

Return to chapter overview

Data Entry - Reservoir

A reservoir is essentially a known pressure element which allows you to add as many pipe connections as you need. For this component we need to set all properties that define the fluid phase state. In practice this means the rows shown in the Input Editor in Figure 1:

Figure 1: Input Requirements for a Reservoir.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the reservoir element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For reservoir elements there are 2 possible status values. On; Off. On is the normal position and tells the application that this node is open and to calculate the flow into or out of the element. Off means that this component is closed to flow. You can close reservoirs to isolate part of a network.

Elevation to Vessel Base: This is the height to the base of the reservoir above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the known pressure measured from the datum. If you are using this type of node to model a storage tank or any other vessel, you enter the liquid height (relative to the vessel base) directly into the Liquid Level above Base row.

Elevation Unit: The unit of length that defines the elevation to the base of the reservoir that you have entered into the elevation row.

Surface Pressure: This sets the overpressure in the vessel or tank. Atmospheric pressure is a typical value, but the vessel may also be over or under atmospheric pressure. Note, if you set the pressure to be 0 bar g or 0 Pa g, etc., the actual surface pressure will become 101325 Pa a or 1 ATM.

Pressure Unit: This is the pressure (or head) unit that you use to define the known pressure. You can use head or pressure units both gauge and absolute. Gauge units end with a "g" and absolute units end with an "a", for example 200 kPa g means 200 KPa above atmospheric pressure (101325 Pa a).

Temperature: This is the temperature of the fluid at the reservoir boundary.

Temperature Unit: Refers to the unit of temperature that is used to specify the temperature value.

Liquid Level above Base: Enter the liquid height above the vessel base directly into this row. Note, if you define a liquid level of zero, any pipe connected to the vessel may have a connection height which is above the defined liquid level. The pipe connection will therefore be within the designated vapor space of the tank. When calculating your network, any pipes above the liquid level may have vapor assigned to the pipe and the results calculated on this basis. If your intention is to assign liquid to all connected pipes, take care to ensure the liquid level defined is above the highest branch connection which has been set in the "Connections" row on the Input Inspector (Figure 1 above).

If you don't intend to include a head of liquid in your model, you also have the option of using a Known or Assigned Pressure boundary node which is also available from the Boundaries tab on the Component Palette.

Level Unit: The unit of length used to define the liquid level.

Vessel Type: Cylindrical Flat Bottomed vessels are the only type supported at this time. This row is for future expansion.

Vessel Diameter: The inside diameter of the vessel or reservoir. FluidFlow does not use this value in any calculation, but it is reserved for future calculations. Note, there is no requirement to set a tank diameter of zero in an attempt to overcome any pressure loss for this component as the reservoir doesn't have an associated pressure loss in FluidFlow. If you are not clear what your tank dimensions shall be, accept the default settings until you have this information available to you.

Vessel Full Height: The liquid height when the vessel is considered to be full. FluidFlow does not use this value in any calculation, but it is reserved for future calculations. Note, there is no requirement to set a tank height of zero in an attempt to overcome any pressure loss for this component as the reservoir doesn't have an associated pressure loss in FluidFlow. If you are not clear what your tank dimensions shall be, accept the default settings until you have this information available to you.

Vessel Dimension Unit: The units of length used to specify the vessel dimensions.

Connections: Reservoirs can have any number of pipe connections. You cannot enter the connection information directly, instead you need to enter the connection information via the Reservoir Connections dialog (Figure 2). If you use this dialog and then later add a new pipe to the reservoir, you will need to click on this row again in order to define the new connection information.

Reservoir Connections v3.31

Figure 2: Pipe Connection Requirements for a Reservoir.

For each pipe connection that you have made you can specify the following entries:

Branch Height: This is the height of the pipe take off from the reservoir/vessel base. You should enter the height to the bottom of the pipe.

Height Unit: The unit of length that you have used to specify the branch height.

Entrance Type: This allows you to specify the way that the pipe enters or leaves the vessel/reservoir. Possible values are: Ignore Entry/Exit Loss; Sharp Edged (Kd = 1.0 or 0.5); Bellmouth (Kd = 0.8); Inward Projecting (Kd = 0.68); API or Liquid (Kd = 0.62). If you select an entrance/exit connection type other than "Ignore Entry/Exit Loss", FluidFlow will include the losses automatically into the calculation solution.

Fluid: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the fluids database via the Select Fluid dialog. There are over 1200 fluids in the standard database.

Fluid Type: This row may not appear in your version. It only appears if you have the Non-Newtonian/Slurry or Two-Phase module activated. The possible selections are: Newtonian/NN-Non Settling; Heterogeneous Settling; Two Phase.

Selecting Newtonian/NN-Non Settling does not require any additional data entry concerning the fluid. You can make Non-Newtonian Non Settling calculations by selecting the appropriate fluid from the Select Fluid dialog.

Selecting Heterogeneous Settling means that you can use a settling slurry as the fluid. If you make this selection then the rows as shown in Figure 3 appear:

Known Pressure Input Editor1

Figure 3: Additional data requirement for a Heterogeneous Settling Slurry.

Solids: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a solid from the solids database via the Select Solid dialog.

Concentration Defined By: There are two possible values for this entry: Cw Weight %; Cv Volume %. This row works together with the Solids Concentration % row. If you select Cw Weight % then you can define the solids concentration of a slurry as a weight percent. If you select Cv Volume % then you can define the solids concentration of a slurry as a volume percent. The carrier fluid is defined in the Fluid row.

Include Size Distribution: There are two possible states for this entry: Yes; No. If you select No then you will need to enter the d50 and d85 particle sizes. Note that these are the only two particle sizes that are used in the Durand or WASC (Wilson, Addie, Sellgren and Clift) correlations, so even if you enter particle size distribution data it will not be used unless you select the WASP calculation methods. Calculation methods are selected from the Calculation Options Dialog.

d50: d50 is the mass mean particle diameter. This is the diameter at which 50% of the sample's mass is composed of smaller particles.

d85: d85 is the particle diameter for which 85%, by mass, of the particles are finer. This is therefore the diameter at which 85% of the sample's mass is composed of smaller particles.

d50/d85 Size Unit: This entry defines the unit of length used to define the particle size diameters.

If you select Yes to Include Size Distribution, then the following rows appear as shown in Figure 4:

Known Pressure Input Editor2

Figure 4: Additional particle size data required for Include Size Distribution = Yes.

% #xxMesh (.yyymm): For each entry, set the solid percent left on the sieve after a sieve analysis. #xx refers to the mesh size and .yyy represents the mesh size in mm.

Selecting Two Phase for the row Fluid Type allows you to enter the initial Quality as shown in Figure 5.

Known Pressure Input Editor3

Figure 5: Additional data required for a Two Phase fluid.

Quality (0..1): This is the vapor quality of the two phase mixture at the reservoir boundary. Quality is the mass fraction of vapor in the two phase mix. 0 means that the phase state is liquid and 1 means that the phase state is vapor. This means your entry should be greater than 0 and less than 1.

Selecting Pulp/Paper Stock for the row Fluid Type allows you to enter the Wt% Oven Dry Concentration as shown in Figure 6.

Known Pressure Input Editor4 PulpPaper

Figure 6: Additional data required for a Pulp/Paper Stock.

Wt% Oven Dry Concentration: This denotes the % composition of pulp/paper stock in the fluid with the remainder being made up of the carrier fluid. Note, the available pulp and paper calculation methods are only recommended for use in the 0.9 to 6 % (Moller) or 2 to 6 % (TAPPI) consistency range. If you wish to model a consistency value outside the noted range values, you may lose accuracy.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 7:

Pipes Input Editor10

Figure 7: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boundaries > Reservoir >

Return to chapter overview

Result Table - Reservoir

The available results for a known pressure node are the same for each possible phase state. Possible results are shown below:

Reservoir Results Table

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition. If there are inflows then the composition displayed will be the net composition, if all flows are out then the composition displayed here will be the entered composition.

Density: The fluid density at the reservoir node. Density depends on temperature and pressure of the fluid. Stagnation density is shown at this type of boundary.

Element Type: The name FluidFlow uses to describe the element.

Fluid Phase: The phase state that exists at the reservoir node.

Net Flow: This is the net flow that FluidFlow has calculated will be flowing either into or out of the node. Since there can be several branches flowing in different directions, the net flow represents the total flow into or out from the reservoir.

Piezometric Pressure: The piezometric pressure at the vessel/reservoir surface. This value is defined as the following two terms in the energy equation

(z1r1g + p1)

Stagnation Pressure: The stagnation pressure at the reservoir node. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). For inflows and outflows this is equal to the pressure specified in the Input Editor.

Temperature: This is the stagnation temperature at the reservoir node. If there are inflows then the temperature displayed will be the net temperature, if all flows are out then the temperature displayed here will be the entered temperature.

Viscosity: The fluid dynamic viscosity at the reservoir node. Viscosity is a measure of the resistance of the fluid to deformation.


Result Charts

Navigation: Components > Boundaries > Reservoir >

Return to chapter overview

Result Charts - Reservoir

There are no charts available for a reservoir element.


Calculation Methods

Navigation: Components > Boundaries > Reservoir >

Return to chapter overview

Calculation Methods - Reservoir

There are no specific calculations at reservoir boundaries.

FluidFlow always calculates the flow that will be achieved at the reservoir and the flow direction for each connection.

If the flow is into the network then temperature and mass composition values that you specified via the Input Editor will exist at this point.

If the calculated flow direction is into the reservoir, then the fluid temperature and mass composition is calculated from application of the conservation laws.


Modelling Tanks using a Reservoir

Tanks can be modelled using a Reservoir node or indeed a Known Pressure node. Figure 1 below provides details a simple system featuring a single tank connected to an open pipe outlet node via a 2 inch schedule 40 steel pipe with a length of 10.0M. The tank details are as follows:

Liquid Level: 1.2 M.

Elevation to tank base: 0 M.

Surface Pressure: 1 ATM.

Diameter: 1.0 M.

Height: 2.0M.

Type: Cylindrical Flat Bottom.

Figure 1

tank figure 1

tank figure 1 part 2

Alternatively, this scenario can be modelled using a Known Pressure node. Pressure can be defined using either gauge or absolute units. When defining pressure as gauge, we need to calculate the pressure using the equation P = ρgh (999.1056847*9.80665*1.2 = 11757.46 Pa g). When defining the pressure in absolute units, we need to include atmospheric pressure. The new value of P therefore becomes 11757.46 + 101325 = 113082.5 Pa a.

Figures 2 & 3 provide details of the data entry and results for these two options.

Figure 2: Pressure Defined in gauge (g) units.

tank figure 2

tank figure 2 part 2

Figure 3: Pressure Defined in absolute (a) units.

tank figure 3

tank figure 3 part 2

We can see that the calculated results are identical for each model.


Open Pipe

An open pipe Open Pipe is a network exit point. Flow can only occur out of this element. The pressure assumed at the outlet is atmospheric, but you can adjust this globally via the Calculations Options Dialog.

Note, the atmospheric pressure at this outlet relates to static pressure.


Data Entry

Navigation: Components > Boundaries > Open Pipe >

Return to chapter overview

Data Entry - Open Pipe

Open Pipes only allow flow out of the network. This is because a fluid is not specified at this boundary. FluidFlow does not make the assumption that the outlet fluid is air, because there may be situations where the discharge from this type of element is not to the atmosphere.

Data entry requirements are shown below:

Figure 1: Data input requirements for an open pipe.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the known pressure element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For open pipe elements there are three possible Status options. 1) On, 2) Off or Closed and 3) Ignore Pressure Loss.

On: This is the normal position and tells the application that this node is open and to calculate the flow out of the element.

Off or Closed: This means that this component is closed to flow. You can close open pipes to isolate part of a network.

Ignore Pressure Loss: This means that FluidFlow sees the node as open but does not make a pressure/friction loss calculation for this element, i.e., friction loss will be zero. Note, although a node status may be set to Ignore Pressure Loss, the software will still calculate any changes in flowing velocity, associated velocity pressure and resultant static pressure values.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the open pipe measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Heat Loss Model: For an open pipe there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the open pipe is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the open pipe. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the open pipe.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the open pipe. Into Network means that the temperature of the fluid is increased as the fluid flows through the open pipe.

Temperature Change: Use this row to specify the temperature change that occurs across the open pipe. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the open pipe as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) an open pipe. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the open pipe as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boundaries > Open Pipe >

Return to chapter overview

Result Table - Open Pipe

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for an open pipe Figure 2: Default result for an open pipe

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Element Type: The name FluidFlow uses to describe the element.

Flow: This is the open pipe inlet flow that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the open pipe will be identical. For incompressible fluids the pipe inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the open pipe. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Friction Loss: This is the calculated total pressure loss due to friction.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure assumed at the outlet of an open pipe node is atmospheric and this relates to static pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the element outlet. For gases, velocity increases as the fluid moves down the pipe. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows down a pipe, for example cooling of a liquid.

Stagnation Pressure Loss: This is the difference between the inlet and outlet stagnation pressures.

Static Pressure Loss: This is the difference between the inlet and outlet static pressures.


Result Charts

Navigation: Components > Boundaries > Open Pipe >

Return to chapter overview

Result Charts - Open Pipe

For all phase states a resistance chart is available. This shows the open pipe friction loss at various flows.

The shape of the resistance curve may change with phase state; the above is typical for a liquid.


Calculation Methods

Navigation: Components > Boundaries > Open Pipe >

Return to chapter overview

Calculation Methods - Open Pipe

For all phase states the pressure loss across an open pipe is given by:

ΔP = 0.5 K ρ v2 where K = 1

The pressure loss coefficient, K, is independent of fluid properties and so this approach can be used for all fluids and all phase states. For a more detailed discussion and explanation on the universality of loss coefficients see Miller [4]


Sprinkler

Sprinkler elements Sprinkler are exit only points from the network. Sprinklers are used in firefighting networks and distribution systems.


Data Entry

Navigation: Components > Boundaries > Sprinkler >

Return to chapter overview

Data Entry - Sprinkler

Sprinklers only allow flow out of the network. This is because a fluid is not specified at this boundary. FluidFlow does not make the assumption that the outlet fluid is air, because there may be situations where the discharge from this type of element is not to the atmosphere.

Data entry requirements are shown in Figure 1:

Figure 1: Input Editor for a sprinkler.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the sprinkler element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For sprinkler elements there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close sprinklers to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the sprinkler measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Sprinkler Name: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a sprinkler from the database via the Set Component dialog.

Exit Pressure: This is the pressure that the sprinkler discharges to.

Pressure Unit: The unit of pressure that defines the exit pressure.

Heat Loss Model: For a sprinkler there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the sprinkler. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the sprinkler.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the sprinkler. Into Network means that the temperature of the fluid is increased as the fluid flows through the sprinkler.

Temperature Change: Use this row to specify the temperature change that occurs across the sprinkler. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the sprinkler as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a sprinkler. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the sprinkler as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boundaries > Sprinkler >

Return to chapter overview

Result Table - Sprinkler

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a sprinkler Figure 2: Default results for a sprinkler

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Element Type: The name FluidFlow uses to describe the element.

Flow: This is the sprinkler inlet flow that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the sprinkler will be identical. For incompressible fluids the sprinkler inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the sprinkler. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Friction Loss: This is the calculated total pressure loss due to friction.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software. This result is not to be confused with the manufacturer's nozzle discharge coefficient (Ks).

Let's consider the sprinkler performance data in Figure 3 which is defined as using a curve-fit relationship of flow against pressure loss.

Sprinkler Head Data

Figure 3: Default results for a sprinkler.

This sprinkler has been modeled in a simple system as outlined in Figure 4:

Figure 4: Default results for a sprinkler

The model has solved such that the flow rate in the system is 3.15 l/min with a pressure drop of 2.07 m fluid (approx. 0.2 bar) which matches the curve-fit relationship shown in Figure 3. The software has also established a pressure loss coefficient K value of 68957.7. This value is calculated as follows:

K = ΔP / (0.5 ρv2)

ΔH = (K)* (v2/2g)

2.07 = (K)*(0.02432/2*9.80665)

K = 68957.70

As noted, this K (Pressure Loss Coefficient) value is not to be confused with a sprinkler manufacturer's coefficient (Ks). Note, if the sprinkler node is defined in the database as having a single Nominal K value, this is the value you will see on the Results Table.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the element outlet. For gases, velocity increases as the fluid moves down the pipe. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows down a pipe, for example cooling of a liquid.

Stagnation Pressure Loss: This is the difference between the inlet and outlet stagnation pressures.

Static Pressure Loss: This is the difference between the inlet and outlet static pressures.


Result Charts

Navigation: Components > Boundaries > Sprinkler >

Return to chapter overview

Result Charts - Sprinkler

For all phase states a resistance chart is available. This shows the sprinkler friction loss at various flows.

The shape of the resistance curve may change with phase state, the above is typical for a liquid.


Calculation Methods

Navigation: Components > Boundaries > Sprinkler >

Return to chapter overview

Calculation Methods - Sprinkler

For all phase states the pressure loss across a sprinkler is given by the equation for orifice flow. Rather than explicitly stating the area and discharge coefficient, sprinkler manufacturers usually employ a nominal size and a coefficient Ks. This coefficient should not be confused with the pressure loss coefficient K.

The relationship between volumetric discharge flow and pressure is given by:

Q = Ks (P)0.5

where:

Q is the flow rate (l/min).

Ks is the manufacturer's nozzle discharge coefficient.

P is the pressure at the nozzle (bar).

FluidFlow also allows sprinkler data to be expressed as a table of flow against pressure. If you define a sprinkler in this way FluidFlow interpolates between table values. Interpolation is made according to the sprinkler equation above.


Known Resistance

An open known resistance Known Resistance is a network exit point. Flow can only occur out of this element.


Data Entry

Navigation: Components > Boundaries > Known Resistance >

Return to chapter overview

Data Entry - Known Resistance

Known Resistance nodes only allow flow out of the network. This is because a fluid is not specified at this boundary. FluidFlow does not make the assumption that the outlet fluid is air, because there may be situations where the discharge from this type of element is not to the atmosphere.

Data entry requirements are shown in Figure 1:

Figure 1: Input requirement for a known resistance.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the known resistance element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For known resistance elements there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow through the element. Off means that this component is closed to flow. You can close known resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the known resistance measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

K (Pressure Loss Coeff): The pressure loss coefficient that applies as the fluid leaves the network.

Heat Loss Model: For a known resistance there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the known resistance is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the known resistance. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the known resistance.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the known resistance. Into Network means that the temperature of the fluid is increased as the fluid flows through the known resistance.

Temperature Change: Use this row to specify the temperature change that occurs across the known resistance. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the known resistance as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) an known resistance. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the known resistance as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boundaries > Known Resistance >

Return to chapter overview

Result Table - Known Resistance

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a known resistance Figure 2: Default result for a known resistance

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Element Type: The name FluidFlow uses to describe the element.

Flow: This is the known resistance inlet flow that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the known resistance will be identical. For incompressible fluids the known resistance inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the known resistance. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Friction Loss: This is the calculated total pressure loss due to friction.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the element outlet. For gases, velocity increases as the fluid moves down the pipe. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows down a pipe, for example cooling of a liquid.

Stagnation Pressure Loss: This is the difference between the inlet and outlet stagnation pressures.

Static Pressure Loss: This is the difference between the inlet and outlet static pressures.


Result Charts

Navigation: Components > Boundaries > Known Resistance >

Return to chapter overview

Result Charts - Known Resistance

For all phase states a resistance chart is available. This shows the known resistance friction loss at various flows.

The shape of the resistance curve may change with phase state, the above is typical for a liquid.


Calculation Methods

Navigation: Components > Boundaries > Known Resistance >

Return to chapter overview

Calculation Methods - Known Resistance

For all phase states the pressure loss across an open known resistance is given by:

ΔP = 0.5 K ρ v2 where K is entered via the Input Editor.

The pressure loss coefficient, K, is independent of fluid properties and so this approach can be used for all fluids and all phase states. For a more detailed discussion and explanation on the universality of loss coefficients see Miller [4]


Circulator

A circulator Circulator element/node is used to supply the fluid and to specify the operating pressure within a closed circuit. You will still need to use some type of booster if you wish to get a circulation within a closed circuit.


Data Entry

Navigation: Components > Boundaries > Circulator >

Return to chapter overview

Data Entry - Circulator

Circulator nodes do not allow flow into or out of the network. They are designed to be used in closed circuits only.

Data entry requirements are shown in Figure 1:

Figure 1: Input requirement for a circulator.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the circulator element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For circulator elements there are 2 possible status values: On; Off. On is the normal position and tells the application that this node is open and to calculate the flow through the element. Off means that this component is closed to flow.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the circulator measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Pressure: This sets the overpressure in the vessel or tank. Atmospheric pressure is a typical value, but the vessel may also be over or under atmospheric pressure. You can also use this field to enter any liquid height that the vessel may contain. For example, if the liquid contains 1 m of liquid and is at atmospheric pressure you can enter a pressure of 1 m Fluid g. If you use this approach then elevation should be measured to the vessel base.

Pressure Unit: This is the pressure (or head) unit that you use to define the known pressure. You can use head or pressure units both gauge and absolute. Gauge units end with a g and absolute units end with an a, for example 200 kPa g means 200 KPa above atmospheric pressure.

Temperature: This is the temperature of the fluid at the known pressure boundary.

Temperature Unit: Refers to the unit of temperature that is used to specify the temperature value.

Fluid: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a value from the fluids database via the Select Fluid dialog. There are over 1200 fluids in the standard database.

Fluid Type: This row may not appear in your version. It only appears if you have the Non-Newtonian/Slurry or Two-Phase module activated. The possible selections are: Newtonian/NN-Non Settling; Heterogeneous Settling; Two Phase.

Selecting Newtonian/NN-Non Settling does not require any additional data entry concerning the fluid. You can make Non-Newtonian Non Settling calculations by selecting the appropriate fluid from the Select Fluid dialog.

Selecting Heterogeneous Settling means that you can use a settling slurry as the fluid. If you make this selection then the rows as shown in Figure 2 appear:

Known Pressure Input Editor1

Figure 2: Additional data requirement for a Heterogeneous Settling Slurry.

Solids: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This allows you to select a solid from the solids database via the Select Solid dialog.

Concentration Defined By: There are two possible values for this entry: Cw Weight %; Cv Volume %. This row works together with the Solids Concentration % row. If you select Cw Weight % then you can define the solids concentration of a slurry as a weight percent. If you select Cv Volume % then you can define the solids concentration of a slurry as a volume percent. The carrier fluid is defined in the Fluid row.

Include Size Distribution: There are two possible states for this entry: Yes; No. If you select No then you will need to enter the d50 and d85 particle sizes. Note that these are the only two particle sizes that are used in the Durand or WASC (Wilson, Addie, Sellgren and Clift) correlations, so even if you enter particle size distribution data it will not be used unless you select the WASP calculation methods. Calculation methods are selected from the Calculation Options Dialog.

d50 : d50 is the mass mean particle diameter.

d85: d85 is the particle diameter for which 85%, by mass, of the particles are finer.

d50/d85 Size Unit: This entry defines the unit of length used to define the particle size diameters.

If you select Yes to Include Size Distribution, then the following rows appear as shown in Figure 3:

Known Pressure Input Editor2

Figure 3: Additional particle size data required for Include Size Distribution = Yes.

% #xxMesh (.yyymm): For each entry, set the solid percent left on the sieve after a sieve analysis. #xx refers to the mesh size and .yyy represents the mesh size in mm.

Selecting Two Phase for the row Fluid Type allows you to enter the initial Quality as shown in Figure 4.

Known Pressure Input Editor3

Figure 4: Additional data required for a Two Phase fluid.

Quality (0..1): This is the vapor quality of the two phase mixture at the known pressure boundary. Quality is the mass fraction of vapor in the two phase mix. 0 means that the phase state is liquid and 1 means that the phase state is vapor. This means your entry should be greater than 0 and less than 1.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boundaries > Circulator >

Return to chapter overview

Result Table - Circulator

The available results for a circulator node are the same for each possible phase state. Possible results are shown in Figure 1:

Figure 1: Available results for a circulator node.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition. FluidFlow determines the composition of the fluid at the circulator, because of the closed nature of the circulator loop, the Composition Mass % is equal to that of the fluid specified in the Input Editor.

Density: The fluid density at the circulator. Density depends on temperature and pressure of the fluid.

Flow: This is the flow that FluidFlow has calculated will be flowing through the circulator.

Stagnation Pressure: The stagnation pressure at the circulator. This is the sum of kinetic and pressure energies (static pressure + velocity pressure).

Temperature: This is the stagnation temperature at the known pressure node. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Viscosity: The fluid dynamic viscosity at the circulator. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.


Result Charts

Navigation: Components > Boundaries > Circulator >

Return to chapter overview

Result Charts - Circulator

There are no charts available for a circulator element.


Calculation Methods

Navigation: Components > Boundaries > Circulator >

Return to chapter overview

Calculation Methods - Circulator

There are no specific calculations method at circulators.

FluidFlow always calculates the flow that will be achieved at the circulator.


Junctions

Junctions are used to make pipe to pipe connections, for example, a pipe change of direction will need a bend, or two streams combining will need a tee or wye junction.

You can make junctions dynamically on the flowsheet by making a pipe connection to an existing junction (or deleting a pipe from an existing junction) or you can explicitly drop a specific junction type onto the flowsheet from the component palette.


Connectors

You can use a connector Connector to make as many pipe connection joins as required. Connectors exhibit no pressure loss across the node itself, so using a connector to model say a manifold system would not be appropriate.

Connectors have no associated charts or calculation methods. The only calculation made at a Connector is the average pressure.

Although a Connector node exhibits no pressure loss across the node itself, we should be aware that Entry and Exit losses are created at pipes where we insert a Connector. Let's consider an example case to demonstrate:

A Connector node has been inserted into a single 10.0 M pipeline splitting the pipe into two equal segment lengths of 5.0 M each. This means there will be an exit loss (K) associated with pipe -1 and an entry loss associated with pipe -2. This is taken into account automatically by the software in the calculation routines.

Figure 1: Pipe split with a Connector node.


Data Entry

Navigation: Components > Junctions > Connectors >

Return to chapter overview

Data Entry - Connectors

Connectors allow multiple pipes to join without experiencing any pressure loss. This may not reflect a practical situation.

Figure 1: Input requirement for a connector.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the connector element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For connector elements there are 2 possible status values: On; Off. On is the normal position and tells the application that this node is open and to calculate the flow through the element. Off means that this component is closed to flow.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 2:

Pipes Input Editor10

Figure 2: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Junctions > Connectors >

Return to chapter overview

Result Table - Connectors

The available results for a connector node are the same for each possible phase state. Possible results are shown in Figure 1:

Figure 1: Available results for a connector node.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition. FluidFlow determines the composition of the fluid at a connector, based on a component mass balance.

Density: The fluid density at the connector. Density depends on temperature and pressure of the fluid.

Stagnation Pressure: The average stagnation pressure at the connector. This is the sum of kinetic and pressure energies (static pressure + velocity pressure).

Temperature: This is the stagnation temperature at the connector node. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Viscosity: The fluid dynamic viscosity at the connector. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.


Navigation: Components > Junctions >

Return to chapter overview

Bends

Bends are used to change the direction of a pipe.


Data Entry

Navigation: Components > Junctions > Bends >

Return to chapter overview

Data Entry - Bends

Bends are used where a pipe directional change occurs.

Figure 1: Input requirement for a bend.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the bend element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For bend elements there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close bends to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Bend Defined By: Allows you to select the method to be used for calculating the pressure loss through a bend. There are 4 possible calculation relationships that can be used: "Idelchik"; "Miller"; "Crane"; or "SAE". Selecting "Idelchik" means that the pressure loss calculations will be made according to the formula and method described in [5]. Similar for "Miller" [4]; "Crane" [13]; or "SAE" [14] (see below and Reference Literature).

Idelchik: Handbook of Hydraulic Resistance - IE Idelchik [5].

Miller: Internal Flow Systems - D. Miller [4].

Crane: Flow of Fluids through valves, fittings and pipe - Crane Technical Paper 410M [13].

SAE: Thermodynamics of Incompressible and Compressible Fluid Flow AIR 1168/1 - SAE International [14].

Branch Angle: This is the angle of the bend in degrees. See Figure 2 below, where α describes the angle, R is the bend radius and D refers to the pipe diameter.

Figure 2: Bend illustration of definitions.

R/D Ratio: This is the ratio of bend radius (R), to pipe diameter (D). See the above illustration Figure 2. For non-circular bends use the hydraulic diameter. The losses through a bend vary according to the sharpness of the bend. The calculated loss coefficient value (K) is a function of the geometric ratio (R/D) and as this ratio increases (making the bend less sharp), the K value reduces.

Quantity: This row allows you to enter a value other than 1, in order to specify the number of bends in a line section. This means that you can simplify your models that contain many bends to a single bend, with a quantity equal to the numbers of bends in the pipe section. You should be aware that this is NOT a recommended approach to use where the fluid phase state is not liquid. This is because the pressure loss is a function of velocity2 and in gas (or two phase) the velocity changes with pipe position.

Heat Loss Model: For a bend there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the bend. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the bend.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 3 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the bend. Into Network means that the temperature of the fluid is increased as the fluid flows through the bend.

Temperature Change: Use this row to specify the temperature change that occurs across the bend. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the bend as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a bend. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the bend as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Junctions > Bends >

Return to chapter overview

Result Table - Bends

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a bend Figure 2: Default results for a bend

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Element Type: The name FluidFlow uses to describe the element.

Flow: This is the bend inlet flow that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the bend will be identical. For incompressible fluids the bend inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the bend. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Friction Loss: This is the calculated total pressure loss due to friction.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the element outlet. For gases, velocity increases as the fluid moves down the pipe. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows down a pipe, for example cooling of a liquid.

Stagnation Pressure Loss: This is the difference between the inlet and outlet stagnation pressures.

Static Pressure Loss: This is the difference between the inlet and outlet static pressures.


Result Charts

Navigation: Components > Junctions > Bends >

Return to chapter overview

Result Charts - Bends

For all phase states a resistance chart is available. This shows the bend friction loss at various flows.

Figure 1: Friction Loss against flow for a Bingham Plastic

The shape of the resistance curve may change with phase state, the above chart is for a non-Newtonian fluid with a significant yield stress.


Calculation Methods

Navigation: Components > Junctions > Bends >

Return to chapter overview

Calculation Methods - Bends

For all phase states the pressure loss across a bend is calculated from the expression:

ΔP = 0.5 K ρ v2

The pressure loss coefficient, K, is independent of fluid properties and so this approach can be used for all fluids and all phase states. For a more detailed discussion and explanation on the universality of loss coefficients see Miller [4].

FluidFlow allows the calculation of the pressure loss coefficient to be made according to 4 different correlations:

Idelchik [5]

Miller [4]

Crane [13]

SAE [14]

Note, the Crane method assumes that each pipe connection is the same diameter and also assumes a 90 deg angle. Idelchik and Miller allow for unequal pipe diameters and user defined angles.

Detailed explanations of the estimation of K can be found in the above sources.

When the tee definition is set to "Crane" the K values used are as follows:

90o Bend/Elbow

r/d | K
1 | 20 ft
1.5 | 14 ft
2 | 12 ft
3 | 12 ft
4 | 14 ft
6 | 17 ft
8 | 24 ft
10 | 30 ft
12 | 34 ft
14 | 38 ft
16 | 42 ft
20 | 50 ft

The K value for standard threaded elbows is calculated from K = 30 ft.

where:

ft is the turbulent friction factor.

Figure 1: Bend/Elbow Illustration.


Tee and Wye Junctions

Tee and wye junctions are used to split or merge two flow streams. The nomenclature used by FluidFlow to describe the various connections follows the naming conventions used by Idelchik.

At present there are no associated charts with a tee or wye junction.


Data Entry

Navigation: Components > Junctions > Tee and Wye Junctions >

Return to chapter overview

Data Entry - Tee and Wye Junctions

Tees and wyes are used to merge or divide flow. In this context the merging process is also called converging or combining and the dividing process can also be called diverging.

Figure 1: Input requirement for a tee or wye.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the tee element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For tee junctions there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out(or into) of the tee. Off means that this component is closed to flow. You can close tees to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Tee Defined By: Allows you to select the method to be used for calculating the pressure loss through a tee or wye. There are 4 possible calculation relationships that can be used: "Idelchik"; "Miller"; "Crane"; or "SAE". Selecting "Idelchik" means that the pressure loss calculations will be made according to the formula and method described in Idelchik [5]. Similar for "Miller" [4]; "Crane" [13]; or "SAE" [14] (see below and Reference Literature).

Idelchik: Handbook of Hydraulic Resistance - IE Idelchik [5].

Miller: Internal Flow Systems - D. Miller [4].

Crane: Flow of Fluids through valves, fittings and pipe - Crane Technical Paper 410M [13].

SAE: Thermodynamics of Incompressible and Compressible Fluid Flow AIR 1168/1 - SAE International [14].

Branch Pipe (RED): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the branch pipe (or channel) needs to be made with reference to the flowsheet. The possible values depend on the connecting pipe numbers. The definition of the branch can best be illustrated by considering Figure 2 below:

Figure 2: Converging (left) and Diverging (right) tees and wyes.

The connecting pipe that contains the combined flow is called the channel, and losses never occur in the channel. Pressure losses always occur between the branch and the channel and between the straight and the channel.

Straight/Branch Angle: For tee junctions this is the angle of the branch with reference to the straight pipe. For wye junctions this is the angle between the two branches (sometimes called side1 and side 2).

Nomenclature: If you press the button at the end of this row, a diagram, similar to that shown above pops up for reference.

Heat Loss Model: For a tee there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the tee. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the tee.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 3 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the tee. Into Network means that the temperature of the fluid is increased as the fluid flows through the tee.

Temperature Change: Use this row to specify the temperature change that occurs across the tee. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the tee as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a tee. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the tee as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Junctions > Tee and Wye Junctions >

Return to chapter overview

Result Table - Tee and Wye Junctions

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a dividing tee junction

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Branch Flow: This is the flow that FluidFlow has calculated will be flowing through the branch pipe.

Branch K: This is the calculated K value that has been used in the pressure loss calculation. The value of this K depends on the calculation method that has been selected (i.e., Idelchik, Miller, Crane, or SAE). By convention the K values are always "adjusted" and shown based on channel flow. There are some examples in the "[FluidFlow3 folder]QA IncompressibleFlow\Junctions" folder that illustrate this in more detail.

Branch Loss: This is the calculated total pressure loss that occurs between the branch and the channel. For a tee total pressure loss is not the same as friction loss, because there are always separation and kinetic energy changes to take into account. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

Branch Reference: This refers to the flowsheet reference pipe number that FluidFlow has used for the branch pipe and the node that it is coming from. The row is useful for cross-referencing your results.

Channel Flow: This is the combined inlet or outlet flow, to or from the tee that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the tee will be identical. For incompressible fluids the tee inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the tee. For gas flows this represents the actual flow at the tee inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different. There is no pressure loss associated with the channel flow.

Channel Stagnation Pressure: This is the stagnation pressure in the channel.

Composition Mass %: This is the fluid mass composition in the channel. FluidFlow determines the composition via an individual component mass balance is carried out over the tee. For a tee composition can change, for example, if two different fluids flow into a tee.

Density: The fluid density in the channel. Density depends on temperature and pressure of the fluid.

Straight Flow: This is the flow that FluidFlow has calculated will be flowing through the straight pipe. Note that branch + straight flow must equal channel flow.

Straight K: This is the calculated K value that has been used in the pressure loss calculation. The value of this K depends on the calculation method that has been selected (i.e., Idelchik, Miller, Crane, or SAE). By convention the K values are always "adjusted" and shown based on channel flow.

Straight Loss: This is the calculated total pressure loss that occurs between the straight and the channel. For a tee, total pressure loss includes friction, separation and kinetic energy changes. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

Straight Reference: This refers to the flowsheet reference pipe number that FluidFlow has used for the straight pipe and the node that it is coming from. The row is useful for cross-referencing your results.

Temperature: This is the stagnation temperature in the channel.

Viscosity: The fluid dynamic viscosity in the channel. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.


Calculation Methods

Navigation: Components > Junctions > Tee and Wye Junctions >

Return to chapter overview

Calculation Methods - Tee and Wye Junctions

For all phase states the pressure loss across a branch or straight is calculated from the expression:

ΔP = 0.5 K ρ v2

The pressure loss coefficient, K, is independent of fluid properties and so this approach can be used for all fluids and all phase states. For a more detailed discussion and explanation on the universality of loss coefficients see Miller [4].

FluidFlow allows the calculation of the pressure loss coefficient to be made according to four different correlations:

Idelchik [5]

Miller [4]

Crane [13]

SAE [14]

Detailed explanations of the estimation of K can be found in the above sources.

When the tee definition is set to "Idelchik" the equations used are as follows:

Converging Case:

Kc,s = A [1 + (Qb/Qc*Fc/Fb)2) - 2 Fc/Fb (1 - Qb/Qc)2 - 2 Fc/Fb(Qb/Qc)2 cos α].

where:

Kc,s is the resistance coefficient.

Qb is the flow through the branch.

Qc is the flow through the channel (combined flow).

Fc is the area of the channel.

Fb is the area of the branch.

α is the branching angle.

Diverging Case:

Kc,s = A [1 + (Vb/Vc)2 - 2 (Vb/Vc) cos α].

where:

Kc,s is the resistance coefficient.

Qb is the flow through the branch.

Qc is the flow through the channel (combined flow).

Further information can be sourced in Reference 5, Handbook of Hydraulic Resistance - IE Idelchik.

When the tee definition is set to "SAE" the equations used are as follows:

Converging Case:

1Kt3 = λ + (G3/G1)2 - 2 A1/A3 cosβ - (G2/G1)2 (2 A2/A3 cosδ).

2Kt3 = λ + (G3/G2)2 - 2 A2/A3 cosδ - (G1/G2)2 (2 A1/A3 cosβ).

where:

1Kt3 is the resistance coefficient from 1 to 3.

2Kt3 is the resistance coefficient from 2 to 3.

λ is a function of β.

for 2Kt3, λ is a function of δ.

Diverging Case:

1Kt2 = λ2 + (2λ2 - λ3)(G2/G1)2 - 2λ3(G2/G1) cos α.

where:

1Kt2 is the resistance coefficient.

λ2 is a function of α for branch 2.

λ3 is a function of α for branch 3.

When the tee definition is set to "Crane" the equations used are as follows:

K = 20 ft (Flow through run).

K = 60 ft (Flow through branch).

When the tee definition is set to "Miller" the equations used are as follows:

Converging Case:

K13 = [(V12/2g + h1) - (V32/2g + h3)] / V32/2g.

K23 = [(V22/2g + h2) - (V32/2g + h3)] / V32/2g.

Diverging Case:

K31 = [(V32/2g + h3) - (V32/2g + h1)] / V32/2g.

K32 = [(V32/2g + h3) - (V32/2g + h2)] / V32/2g.

where:

V is the mean velocity.

g is gravitational acceleration.

h is the head value.

The illustration below provides an overview of converging and diverging tee junctions.

Figure 1: Converging & Diverging Tee Junctions.


Cross Junction

Cross junctions are used to split or merge flow streams with 4 connections. The nomenclature used by fluid flow to describe the various connections follows the naming conventions used by Idelchik.

From V3.2 onwards there are no longer any pressure losses associated with cross junctions. This is because the literature relationships are totally inconsistent between the various sources. In addition many of the relationships, expressed as formula are discontinuous, which means that they present special challenges during convergence.

At present there are no associated charts with a cross junction.


Data Entry

Navigation: Components > Junctions > Cross Junction >

Return to chapter overview

Data Entry - Cross Junction

Cross junctions are used to merge and divide 4 flow streams.

Figure 1: Input requirement for a cross

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the cross element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For cross junctions there are 2 possible status values: Off; or Ignore Pressure Loss. Ignore Pressure Loss is the normal position and means that the node is Open but the pressure loss calculation is skipped. Off means that this element is closed to flow. You can close cross junctions to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Cross Defined By: The only available option here is Idelchik, and the relationships are no longer used (from V3.2 onwards).

Channel Pipe (RED): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the channel pipe needs to be made with reference to the flowsheet. The possible values depend on the connecting pipe numbers. The definition of the channel pipe can best be illustrated by considering Figure 2 below:

Figure 2: Straight and channel pipe definitions for a cross

Straight Pipe (YELLOW): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the straight pipe needs to be made with reference to the flowsheet. The possible values depend on the connecting pipe numbers. The definition of the straight pipe can best be illustrated by considering Figure 2 above:

Straight/Branch Angle: For cross junctions this is the angle of the branch with reference to the straight pipe. This value is no longer used.

Nomenclature: If you press the button at the end of this row, a diagram, similar to that shown above pops up for reference.

Heat Loss Model: For a cross there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the cross. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the cross.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 3 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the cross. Into Network means that the temperature of the fluid is increased as the fluid flows through the cross.

Temperature Change: Use this row to specify the temperature change that occurs across the cross. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the cross as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a cross. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the cross as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Junctions > Cross Junction >

Return to chapter overview

Result Table - Cross Junction

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a cross junction

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Channel Flow: This is the combined inlet or outlet flow, to or from the cross that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the cross will be identical. For incompressible fluids the cross inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the cross. For gas flows this represents the actual flow at the cross inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different. There is no pressure loss associated with the channel flow.

Composition Mass %: This is the fluid mass composition in the channel. FluidFlow determines the composition via an individual component mass balance is carried out over the cross. For a cross composition can change, for example, if two different fluids flow into a cross.

Density: The fluid density in the channel. Density depends on temperature and pressure of the fluid.

Side 1 Flow: This is the flow that FluidFlow has calculated will be flowing through the side 1 pipe.

Side 1 K: This is the calculated K value. From V3.2 onwards this value will always be zero, because the pressure loss calculation is no longer made.

Side 1 Loss: This is the calculated total pressure loss that occurs between side 1 and the channel and will be zero.

Side 1 Reference: This refers to the flowsheet reference pipe number that FluidFlow has used for the side 1 pipe. The row is useful for cross-referencing your results.

Side 2 Flow: This is the flow that FluidFlow has calculated will be flowing through the side 2 pipe.

Side 2 K: This is the calculated K value. From V3.2 onwards this value will always be zero, because the pressure loss calculation is no longer made.

Side 2 Loss: This is the calculated total pressure loss that occurs between side 2 and the channel and will be zero.

Side 2 Reference: This refers to the flowsheet reference pipe number that FluidFlow has used for the side 2 pipe. The row is useful for cross-referencing your results.

Stagnation Pressure: This is the stagnation pressure in the channel.

Straight Flow: This is the flow that FluidFlow has calculated will be flowing through the straight pipe.

Straight K: This is the calculated K value that has been used in the pressure loss calculation. The value of this K depends on the calculation method that has been selected (i.e., Idelchik). By convention the K values are always "adjusted" and shown based on channel flow. From V3.2 onwards this value will always be zero, because the pressure loss calculation is no longer made.

Straight Loss: This is the calculated total pressure loss that occurs between the straight and the channel and will be zero.

Straight Reference: This refers to the flowsheet reference pipe number that FluidFlow has used for the straight pipe. The row is useful for cross-referencing your results.

Temperature: This is the stagnation temperature in the channel.

Viscosity: The fluid dynamic viscosity in the channel. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.


Calculation Methods

Navigation: Components > Junctions > Cross Junction >

Return to chapter overview

Calculation Methods - Cross Junction

From v3.20 onwards there are no longer any pressure losses associated with cross junctions. This is because the literature relationships are totally inconsistent between the various sources. In addition many of the relationships, expressed as formula are discontinuous and/or do not appear to tie up with published loss charts, which means that they present special challenges during convergence.


Boosters

FluidFlow includes a comprehensive database of the following boosters:

1. Centrifugal Pumps.

2. Rotating Positive Displacement Pumps.

3. Fans & Compressors.

4. Positive Displacement Pumps & Compressors.

Users can add new models to this database, a task which you only need to complete once. The new booster will then be stored in the database and will be available for all future modelling projects.

From v3.31 onwards, FluidFlow allows you to automatically size all components available on the Boosters tab.

If you are having any difficulty adding new models to the database, contact support at: support@fluidflowinfo.com.


Centrifugal Pump

Centrifugal pumps are commonly used to move liquids through a piping system. In FluidFlow, all pump performance data is stored in a database and the link to this data is made via the input editor.


Data Entry

Navigation: Components > Boosters > Centrifugal Pump >

Return to chapter overview

Data Entry - Centrifugal Pump

Centrifugal pumps are used to transport liquids through a piping system. The pressure of the liquid is boosted by the impeller of the centrifugal pump imparting kinetic energy.

Data entry requirements for Centrifugal pumps are shown in Figure 1 below.

Figure 1: Input requirement for a centrifugal pump.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the pump. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For centrifugal pump elements there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that the pump is operating and to calculate the flow out and pressure of the element. Off means that this component is closed to flow. You can close pumps to isolate part of a network. Ignore Pressure Loss means that the node is Open but the effect of the pump is ignored.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size centrifugal pumps using two sizing models as described below.

Sizing Model: Users can choose from two pump sizing models: 1) Size for Flow & 2) Size for Pressure Rise. If you select Size for Flow, additional data entry is required as per Figure 2.

PumpInput Auto Size

Figure 2: Automatically sizing a centrifugal pump based on design flow rate.

Design Flow: This is the design flow requirement for the pump. You can enter either a volumetric or mass flow rate. Note, it is important we don't duplicate/over-constrain the flow in the system when selecting this option. For instance, we cannot set a centrifugal pump to Size for Flow and model in series with: 1) a Known Flow boundary node, 2) a Flow Control Valve, 3) an Orifice Plate, Inline Nozzle or Venturi Tube which are set to Size for Flow. In this case, a better approach would be to set the Sizing Model for the pump to Size for Pressure Rise.

Flow Unit: This is the unit of flow used when defining the flow rate for the pump.

If you select Size for Pressure Rise, additional data entry is required as per Figure 3.

PumpInput Auto Size Pressure Rise

Figure 3: Automatically sizing a centrifugal pump based on design duty pressure rise.

Design Pressure Change: This is the design pressure rise requirement for the pump.

Pressure Change Unit: This is the pressure (or head) unit that you use when defining the design pump pressure rise.

Pump Model: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a pump model selection.

Impeller Diameter and Operating Speed: These rows in the Input Editor work together. You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of impeller size and operating speed is made via the Set Pump Changes dialog.

Discharge Pipe (RED): Centrifugal pumps are directional. i.e., they have a suction and discharge side. This row is used to set the pump direction, the red dot represents the discharge side of the pump. You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet.

Solids Derating: This row will only appear if the slurry module license is active. In general, this dropdown field configures how the drop in centrifugal pump performance due to presence of solid particles will be modelled:

·None

·Fixed Reduction Ratio

·King

·HI Guidelines (2005)

·GIW 4CM

·ANSI 2021 Monosize

When "Fixed Reduction Ratio" is selected, an additional input field for efficiency derating is displayed:

Heat Loss Model: For a pump there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the pump. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the pump.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 4 below:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the pump. Into Network means that the temperature of the fluid is increased as the fluid flows through the pump.

Temperature Change: Use this row to specify the temperature change that occurs across the pump. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the pump as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 5:

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a pump. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the pump as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boosters > Centrifugal Pump >

Return to chapter overview

Result Table - Centrifugal Pump

The available results that are listed in the table vary depending upon the visible properties that you have selected. Figure 1 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a centrifugal pump.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the pump. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Duty Efficiency: This is the efficiency that the pump will operate at the duty point. If pump data contained in the database does not include efficiency values then n/a will appear in this row.

Duty Flow: This is the flow that FluidFlow has calculated that the pump will deliver when it is placed in your system. When you place a pump in any pipe system there will always be one unique flow that will occur, and this is called the duty flow. Any centrifugal pump will always operate on its performance curve, the position of the duty flow point is determined by the intersection of the system curve and the pump capacity curve.

Duty NPSH Available: This is the net positive suction head available at the pump suction. The available NPSH depends on the design of the suction piping and is not related to the type of pump you are using.

Duty NPSH Required: This is the net positive suction head that the pump requires. The pump manufacturer has determined this value with respect to pump cavitation. You should always ensure that the NPSH available is greater than that required. Typically a safety margin of 0.5m is used.

Duty Power: The pump shaft power needed to drive the pump. In practice the total power needed will be greater, because the shaft power does not include any losses in the transmission train or driver.

Duty Pressure Rise: This is the head that will be developed by the pump at the duty flow. A centrifugal pump, in any fixed system will always deliver the same head irrespective of the fluid being pumped. The delivered pressure will always be different as this depends on the fluid density, which of course changes with each liquid.

The example in Figure 2 below shows a calculated pump duty pressure rise of 12.8 m fluid for a system transporting water from an inlet and outlet which have a head value of 11.2 and 10.2 m fluid respectively. The pressure loss in pipes -1 and -2 are calculated as 0.1 and 13.7 m fluid. The pump duty pressure rise in this case can therefore be established from: 10.2 - 11.2 + 13.7 + 0.1 = 12.8 m fluid (no change in elevation in this system).

Figure 2: Pump Duty Pressure Rise.

In Stagnation Pressure: The stagnation pressure at the pump inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the pump inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the pump inlet. This is often different to the outlet velocity because typically pump suction size is larger than pump discharge size.

Out Stagnation Pressure: The stagnation pressure at the pump outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the pump outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the pump outlet.


Result Charts

Navigation: Components > Boosters > Centrifugal Pump >

Return to chapter overview

Result Charts - Centrifugal Pump

A typical centrifugal pump chart is shown in Figure 1.

Figure 1: Centrifugal Pump Chart.

The upper chart shows the pump performance curve (blue), the system curve (black) and the duty point (where the 2 lines intersect) is shown by the larger yellow triangle.

The upper chart also shows the operating limits of the pump as specified in the database (the crosses X on the performance curve) and the efficiency curve (red). The duty point on the efficiency curve is also shown (smaller yellow triangle in the upper chart).

The lower chart shows the power (purple) and NPSH required (lilac) curves, together with the duty point on each curve.

Pump charts provide invaluable information that should be utilized when considering your system designs. For example, we need to consider if the pump is being operated near to the best efficiency point (BEP). The BEP occurs at the maximum height of the efficiency curve. Efficient designs should have duty points as near as possible to the BEP.

Composite Pump Charts

Users can develop composite pump charts (series and parallel) by selecting the "Tools | Composite Chart Setup..." menu item, then select the tab titled "Parallel & Series Pumping" (see Figure 2 below).

Note: Composite pump charts are not available for centrifugal pumps when the "Automatically Size" option is set to "On".

Figure 2: Composite Pump Chart Setup

composite pump chart setup

From this dialog, select the pumps you wish to be included in the composite chart. We have based this example on the model file "[FluidFlow3 folder]\QA Incompressible Flow\Boosters\4 Pumps in Parallel 3 Operating.ff3". All pumps in this model are operating in parallel and we are going to plot a chart for pumps 10 & 11 only. Ensure pump User Numbers 10 & 11 are checked ON and select "Make Plot". FluidFlow will now develop a composite chart which will appear as per Figure 3.

Figure 3: Sample Composite Pump Chart

composite pump chart

The chart configuration can be edited by selecting the "Configure Chart" icon at the bottom left corner of the graph plot. The X & Y axis can also be adjusted as desired by increasing or decreasing the limits of the chart coordinates.

Note, when developing the composite chart for multiple pumps in a system, the composite curve can potentially turn upwards unexpectedly as shown below. This is an example of three pumps in parallel. This can occur if the pump capacity curve(s) as defined in the database have not been fully defined across the full quadrant and/or if the Equation Order for the defined pump curve(s) is set to Quintic etc.

To resolve this, you can complete the definition of the pump capacity curve(s) in the database across the full quadrant and set the Equation Order to an alternative type such as Cubic etc.

composite pump chart issue

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Calculation Methods

Navigation: Components > Boosters > Centrifugal Pump >

Return to chapter overview

Calculation Methods - Centrifugal Pump

The performance curves for centrifugal pumps are usually expressed as simple polynomials, as a series of cubic splines or in some instances as Chebyshev polynomials. FluidFlow uses this approach to store the performance data. For a simple polynomial the expression is

ΔH = C1 + C2Q + C3Q2 + C4Q3 .....

The performance data in situ is adjusted according to any or all of the following factors.

1. A change in operating speed or impeller size, from that provided in the pump database. If this occurs the pump performance data is adjusted according to the affinity laws:

Q1/Q2 = (N1/N2) (D1/D2)

H1/H2 = (N1/N2)2 (D1/D2)2

NPSHr1/NPSHr2 = (N1/N2)2 (D1/D2)2

Ph1/Ph2 = (N1/N2)3 (D1/D2)3

where:

Q is the volumetric flow rate.

N is the pump speed (RPM).

D is the impeller diameter.

H is the pressure or head developed by the pump.

Ph is the shaft power.

NPSHr is the net positive suction head requirement.

2. If a liquid with a viscosity higher than 4.3 centistokes is encountered then FluidFlow makes a correction to the performance data according to the method described in the Hydraulic Institute Standards. This correction will only occur if the option has been enabled from the "Global Settings Tab" of the Calculation Options dialog.

3. If a slurry is being pumped and derating has been set from the Input Editor then the performance data will be adjusted according to the adjustment method selected.

FluidFlow displays the Pump Shaft Power in the calculated results. The Pump Shaft Power is calculated from the hydraulic power and the pump efficiency at the duty point. This is given by the formula:

Ph = Q ρ g H / η

The following example provides an illustration of how the Pump Shaft Power is calculated. Note, this model can be opened from the following path: "[FluidFlow3 folder]\QA Incompressible Flow\Boosters\4 Pumps in Parallel 3 Operating.ff3".

Pump Shaft Power

Figure 1: Pump Shaft Power.

If we consider centrifugal pump node 11, we can calculate the Pump Hydraulic Power from: Q*rho*g*H/3.6 *106.

Pump Hydraulic Power = 36.3913355186*999.0905263535*9.80665*24.9323675717/3.6 *106 = 8889698.49111202/3.6 *106 = 2.46936069 kW.

The Pump Shaft Power can now be determined by dividing the Pump Hydraulic Power by the efficiency (η).

Pump Shaft Power = 2.46936069 / 0.7093 = 3.4814 kW.

See the Nomenclature section for the symbol definitions.


Auto-Sizing Centrifugal Pumps

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including Centrifugal Pumps.

This series of examples demonstrates how these pumps can be automatically sized, based on a design flow rate or design duty pressure rise. The system used in this example has a total pipe length of 55.0 m, the pipework is 50A JIS 50mm steel and the system experiences an elevation change of 10.0 m. A copy of this model can be found in the folder: "QA Equipment Sizing".

Auto-Sizing Centrifugal Pumps - Design Flow.

Set the Automatically Size field for the pump to "On" and enter a Design Flow rate of 2.7754 kg/s.

Figure 1 shows the data entry for the pump and Figure 2 gives an overview of the performance of this device in this system.

Centrifugal Pump Auto Size Fig 1

Figure 1: Data entry for Auto-Sizing a Centrifugal Pump (Size for Flow).

Centrifugal Pump Auto Size Fig 2

Figure 2: Auto-Sizing a Centrifugal Pump (Size for Flow).

From this analysis, we have established the pump operating performance. The duty pressure rise and NPSHa has been calculated as 118765 Pa (12.1 m fluid) and 10.0 m fluid respectively.

Auto-Sizing Centrifugal Pumps - Design Duty Pressure Rise.

Set the Automatically Size field for the pump to "On" and enter the Design Duty Pressure Rise rate of 118765 Pa as established in the first simulation (Figure 2).

The Input Editor for the pump should now appear as shown in Figure 3.

Centrifugal Pump Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a Centrifugal Pump (Size for Pressure Rise).

Figure 4 shows the calculated results for the pump. As we can see, FluidFlow has established a mass flow rate of 2.7754 kg/s and a NPSHa of 10.0 m fluid, i.e., exactly matching the results from Figure 2. This element has therefore been automatically sized successfully using both available sizing options. Using this data, we can now select a suitable pump model from the database or request a proposal from a vendor.

Centrifugal Pump Auto Size Fig 4

Figure 4: Auto-Sizing a Centrifugal Pump (Size for Pressure Rise).

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Rotating Positive Displacement Pump

Rotating Positive Displacement pumps are usually used to move high viscosity liquids through a system. A rotary pump traps fluid in its closed casing and discharges a smooth flow. These types of pumps can handle any liquid that does not contain hard or abrasive solids. Unlike a centrifugal pump the rotary design will deliver a capacity that is not greatly affected by pressure requirements at either the suction or discharge ends.


Data Entry

Navigation: Components > Boosters > Rotating Positive Displacement Pump >

Return to chapter overview

Data Entry - Rotating Positive Displacement Pump

Rotary positive displacement pumps are usually used to transfer viscous liquids. Data entry requirements for these pumps are shown in Figure 1 below.

Figure 1: Input requirement for a rotary PD pump.

Unique Name: Allows you to enter a descriptive name for this element. You can use this to describe the pump. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For rotary positive displacement pumps there are 3 possible status values. On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that the pump is operating and to calculate the flow out and pressure of the pump. Off means that this component is closed to flow. You can close pumps to isolate part of a network. Ignore Pressure Loss means that the node is Open but the effect of the pump is ignored.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size Rotary PD pumps by specifying the design system flow rate. If you select On, additional data entry is required as per Figure 2.

RotaryPDINput Auto Size

Figure 2: Automatically Sizing a Rotary PD pump based on design flow rate.

Design Flow: This is the design flow requirement for the pump. You can enter either a volumetric or mass flow rate.

Flow Unit: This is the unit of flow used when defining the flow rate for the pump.

Pump Model: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a pump model selection.

Operating Speed: You can change this value directly by typing an entry. It is used to enter the operating speed of the pump in RPM.

Discharge Pipe (RED): Rotary positive displacement pumps are directional. i.e., they have a suction and discharge side. This row is used to set the pump direction, the red dot represents the discharge side of the pump. You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet.

Heat Loss Model: For a pump there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the pump. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the pump.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 3 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the pump. Into Network means that the temperature of the fluid is increased as the fluid flows through the pump.

Temperature Change: Use this row to specify the temperature change that occurs across the pump. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the pump as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4.

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a pump. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the pump as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5.

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boosters > Rotating Positive Displacement Pump >

Return to chapter overview

Result Table - Rotating Positive Displacement Pump

The available results that are listed in the table vary depending upon the visible properties that you have selected. Figure 1 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a rotary PD pump.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the pump. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Duty Flow: This is the flow that FluidFlow has calculated that the pump will deliver when it is placed in your system. For a rotary positive displacement pump this will be equal to the operating speed x the volume displacement per revolution less any slip. The slip through the pump is a function of liquid viscosity

Duty Pressure Rise: This is the head that will be developed by a rotary positive displacement pump at the duty flow. A rotary positive displacement pump, in any fixed system will always deliver the head required to overcome system friction and static head differences, whatever the pressure requirement.

In Stagnation Pressure: The stagnation pressure at the pump inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the pump inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the pump inlet. This is often different to the outlet velocity because typically pump suction size is larger than pump discharge size.

Out Stagnation Pressure: The stagnation pressure at the pump outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the pump outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the pump outlet.

Volumetric Efficiency: This is a volumetric efficiency of the rotary positive displacement pump at the duty point. In this sense, it represents a measure of the slip back of liquid through the pump.


Result Charts

Navigation: Components > Boosters > Rotating Positive Displacement Pump >

Return to chapter overview

Result Charts - Rotating Positive Displacement Pump

There are no charts for a Rotary Positive Displacement Pump.


Calculation Methods

Navigation: Components > Boosters > Rotating Positive Displacement Pump >

Return to chapter overview

Calculation Methods - Rotating Positive Displacement Pump

The volumetric flow delivered by a rotary positive displacement pump is given by the expression:

Q = S DR - Slip ΔP


Auto-Sizing Rotating PD Pumps

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including Rotating PD Pumps.

This series of examples demonstrates how these pumps can be automatically sized.

To begin, a Varisco PD pump has been modeled in a 2 inch Schedule 40 steel pipeline with a total length of 18.28 M. Using the calculated information, we can benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the Varisco PD pump and Figure 2 gives an overview of the performance of this device in this system.

RotaryPD Auto Size Fig 1

Figure 1: Data entry for Varisco PD Pump (Auto Size function set to Off).

RotaryPD Auto Size Fig 2

Figure 2: Varisco PD Pump Model (Auto Size function set to Off).

From this analysis, we have established the pump operating performance. The flow rate and duty pressure rise has been calculated as 3.82 kg/s and 1.6 m fluid (15828 Pa) respectively and a NPSHa of 9.9 m fluid has been established.

Auto-Sizing Rotating PD Pumps.

Set the Automatically Size field for the pump to "On" and enter a Design Flow rate of 3.82 kg/s. Note, the field titled Pump Model has now been removed from the Input Editor.

The Input Editor for the pump should now appear as shown in Figure 3.

RotaryPD Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a PD Pump.

Figure 4 shows the calculated results for the pump. As we can see, FluidFlow has established a mass flow rate of 3.82 kg/s, a NPSHa of 9.9 m fluid and a duty pressure rise of 15828 Pa, i.e., exactly matching the results from Figure 2. This element has therefore been automatically sized successfully. Using this data, we can now select a suitable pump model from the database (Varisco PD Pump) or request a proposal from a vendor.

RotaryPD Auto Size Fig 4

Figure 4: Auto-Sizing a PD Pump.

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Fans and Compressors

Fans and Compressors are commonly used to move gases through a piping system. In FluidFlow, all fan and compressor performance data is stored in a database and the link to this data is made via the input editor.


Data Entry

Navigation: Components > Boosters > Fans and Compressors >

Return to chapter overview

Data Entry - Fans and Compressors

Fans and compressors are used to transport gases through a piping system. The pressure of the gas is boosted by the impeller of the fan or compressor imparting kinetic energy. Data entry requirements for fans and compressors are shown in Figure 1 below.

Figure 1: Input requirement for a compressor or fan.

Unique Name: Allows you to enter a descriptive name for the fan. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For compressor or fan elements there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that the fan is operating and to calculate the flow out and pressure of the element. Off means that this component is closed to flow. You can close the fan to isolate part of a network. Ignore Pressure Loss means that the node is Open but the effect of the fan or compressor is ignored.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a booster. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size fans or compressors using two sizing models as described below.

Sizing Model: Users can choose from two fan/compressor sizing models: 1) Size for Flow & 2) Size for Pressure Rise. If you select Size for Flow, additional data entry is required as per Figure 2.

FanInput Auto Size

Figure 2: Automatically sizing a fan or compressor based on design flow rate.

Design Flow: This is the design flow requirement for the fan/compressor. You can enter either a volumetric or mass flow rate. This is the design flow requirement for the fan/compressor. You can enter either a volumetric or mass flow rate. Note, it is important we don't duplicate/over-constrain the flow in the system when selecting this option. For instance, we cannot set a fan/compressor to Size for Flow and model in series with: 1) a Known Flow boundary node, 2) a Flow Control device, 3) an Orifice Plate, Inline Nozzle or Venturi Tube which are also set to Size for Flow. In this case, a better approach would be to set the Sizing Model for the fan to Size for Pressure Rise.

Flow Unit: This is the unit of flow used when defining the flow rate for the fan/compressor.

If you select Size for Pressure Rise, additional data entry is required as per Figure 3.

PumpInput Auto Size Pressure Rise

Figure 3: Automatically sizing a fan or compressor based on design duty pressure rise.

Design Pressure Change: This is the design pressure rise requirement for the fan/compressor.

Pressure Change Unit: This is the pressure (or head) unit that you use when defining the design fan/compressor pressure rise.

Fan Model: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a compressor or fan model selection.

Impeller Diameter and Operating Speed: These rows in the Input Editor work together. You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of impeller size and operating speed is made via the Set Booster Changes dialog.

Discharge Pipe (RED): Fans and compressors are directional. i.e., they have a suction and discharge side. This row is used to set the booster direction, the red dot represents the discharge side of the booster. You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet.

Heat Loss Model: For a fan or compressor there are 4 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate; Adiabatic Compression. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the fan. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the fan. Selecting Adiabatic Compression means that FluidFlow will estimate the temperature rise due to adiabatic compression.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 4 below:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the fan. Into Network means that the temperature of the fluid is increased as the fluid flows through the fan.

Temperature Change: Use this row to specify the temperature change that occurs across the fan. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the fan as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 5.

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a fan or compressor. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the fan as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6.

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boosters > Fans and Compressors >

Return to chapter overview

Result Table - Fans and Compressors

The available results that are listed in the table vary depending upon the visible properties that you have selected. Figure 1 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a fan or compressor.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the fan. FluidFlow determines the composition from an individual component mass balance is carried out at each node.

Duty Efficiency: This is the efficiency that the fan will operate at the duty point.

Duty Flow: This is the flow that FluidFlow has calculated that the fan or compressor will deliver when it is placed in your system. When you place a fan or compressor in any pipe system there will always be one unique flow that will occur, and this is called the duty flow. Any fan or compressor will always operate on its performance curve, the position of the duty flow point is determined by the intersection of the system curve and the booster capacity curve.

Duty Power: The shaft power needed to drive the fan or compressor. In practice the total power needed will be greater, because the shaft power does not include any losses in the transmission train or driver.

Duty Pressure Rise: This is the pressure that will be developed by the fan or compressor at the duty flow. This is the stagnation pressure rise (in the literature often called dynamic pressure or total pressure).

Flow at NTP: This is the volumetric duty flow referenced to normal gas conditions of 101325 Pa and 0°C

Flow at STP: This is the volumetric duty flow referenced to standard gas conditions of 101325 Pa and 15°C

In Stagnation Pressure: The stagnation pressure at the fan inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the fan or compressor inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The average velocity at the fan or compressor inlet, determined by

m/(r1 Ap)

Out Stagnation Pressure: The stagnation pressure at the fan or compressor outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the fan or compressor outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The average velocity at the fan or compressor outlet, determined by

m/(ρ2 Ap)


Result Charts

Navigation: Components > Boosters > Fans and Compressors >

Return to chapter overview

Result Charts - Fans and Compressors

A typical fan chart is shown below:

Figure 1: Fan or Compressor Chart

The upper chart shows the fan performance curve (blue), and the duty point (shown by the larger yellow triangle), the operating limits of the fan as specified in the database (the crosses X on the performance curve) and the efficiency curve (red). The duty point on the efficiency curve is also shown (smaller yellow triangle in the upper chart).

The lower chart shows the power (purple) curve, together with the duty point.

Fan charts provide invaluable information that should be utilized when considering your system designs. For example, we need to consider if the fan is being operated near to the best efficiency point (BEP). The BEP occurs at the maximum height of the efficiency curve. Efficient designs should have duty points as near as possible to the BEP.


Calculation Methods

Navigation: Components > Boosters > Fans and Compressors >

Return to chapter overview

Calculation Methods - Fans and Compressors

The performance curves for fans and compressors are usually expressed as simple polynomials, as a series of cubic splines or in some instances as Chebyshev polynomials. FluidFlow uses this approach to store the performance data. For a simple polynomial the expression is

ΔP = C1 + C2Q + C3Q2 + C4Q3 ...

The performance data in situ is adjusted according to any or all of the following factors.

1. A change in operating speed or impeller size, from that provided in the fan database. If this occurs, the fan performance data is adjusted according to the affinity laws:

Q1/Q2 = (N1/N2) (D2/D1) and

H1/H2 = (N1/N2)2 (D2/D1)2 and

Ph1/Ph2 = (N1/N2)3 (D2/D1)3

2. The suction density also affects the fan or compressor performance. The volumetric flow does not change, but the stagnation pressure developed varies directly with the density ratio.

P2 = P1 (ρ2/ρ1) and the shaft power requirement varies with the same ratio: Ph2 = Ph1 (ρ2/ρ1)

Fan Shaft Power is calculated from the hydraulic power and the fan efficiency at the duty point. This is given by the formula:

Ph = Q ρ g H / η

If Adiabatic compression is selected as the heat loss model then FluidFlow estimates the output temperature from the expression

T2 = T1(P2/P1)n where pressures and temperatures refer to absolute static conditions and n is (Cp/Cv-1)/(Cp/Cv) ratio

See the Nomenclature section for the symbol definitions.


Auto-Sizing Fans & Compressors

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including Fans & Compressors.

This series of examples demonstrates how these boosters can be automatically sized, based on a design flow rate or design duty pressure rise. The system used in this example has a total pipe length of 55.0 m, the pipework is 50A JIS 50mm steel and the system experiences an elevation change of 10.0 m. The fluid used in this example is nitrogen. A copy of this model can be found in the folder: "QA Equipment Sizing".

Auto-Sizing Fans & Compressors - Design Flow.

Set the Automatically Size field for the booster to "On" and enter a Design Flow rate of 0.25 kg/s.

Figure 1 shows the data entry for the fan and Figure 2 gives an overview of the performance of this device in this system.

FanInput Auto Size Fig 1

Figure 1: Data entry for Auto-Sizing a Fan or Compressor (Size for Flow).

FanInput Auto Size Fig 2

Figure 2: Auto-Sizing a Fan or Compressor (Size for Flow).

From this analysis, we have established the fan operating performance. The duty pressure rise has been calculated as 98268 Pa.

Auto-Sizing Fans & Compressors - Design Duty Pressure Rise.

Set the Automatically Size field for the booster to "On" and enter the Design Duty Pressure Rise rate of 98268 Pa as established in the first simulation (Figure 2).

The Input Editor for the fan should now appear as shown in Figure 3.

FanInput Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a Fan or Compressor (Size for Pressure Rise).

Figure 4 shows the calculated results for the fan. As we can see, FluidFlow has established a mass flow rate of 0.25 kg/s, i.e., exactly matching the results from Figure 2. This element has therefore been automatically sized successfully using both available sizing options. Using this data, we can now select a suitable fan from the database or request a proposal from a vendor.

FanInput Auto Size Fig 4

Figure 4: Auto-Sizing a Fan or Compressor (Size for Duty Pressure Rise).

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


PD Pump or Compressor

Positive Displacement pumps can be used to move any fluid (i.e., any phase state) through a system.


Data Entry

Navigation: Components > Boosters > PD Pump or Compressor >

Return to chapter overview

Data Entry - PD Pump or Compressor

Positive Displacement pumps are used to transport both liquids and gases.

Figure 1: Input requirement for a Positive Displacement pump.

Unique Name: Allows you to enter a descriptive name for the pump. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For positive displacement pumps there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that the pump is operating and to calculate the flow out and pressure of the pump. Off means that this component is closed to flow. You can close pumps to isolate part of a network. Ignore Pressure Loss means that the node is Open but the effect of the pump is ignored.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size PD pumps or compressors by specifying the design system flow rate. If you select On, additional data entry is required as per Figure 2.

RotaryPDINput Auto Size

Figure 2: Automatically Sizing a Rotary PD pump/compressor based on design flow rate.

Design Flow: This is the design flow requirement for the pump/compressor. You can enter either a volumetric or mass flow rate.

Flow Unit: This is the unit of flow used when defining the flow rate for the pump/compressor.

Booster Model: You cannot add a value directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a pump model selection.

Operating Speed: You can change this value directly by typing an entry. It is used to enter the operating speed of the pump in RPM.

Discharge Pipe (RED): Positive displacement pumps are directional. i.e., they have a suction and discharge side. This row is used to set the pump direction, the red dot represents the discharge side of the pump. You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet.

Heat Loss Model: For a pump there are 4 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate; Adiabatic Compression. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the pump. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the pump. Selecting Adiabatic Compression means that FluidFlow will estimate the temperature rise due to adiabatic compression, provided the fluid phase is vapor.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 3 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the pump. Into Network means that the temperature of the fluid is increased as the fluid flows through the pump.

Temperature Change: Use this row to specify the temperature change that occurs across the pump. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the pump as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4.

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a pump. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the pump as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5.

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Boosters > PD Pump or Compressor >

Return to chapter overview

Result Table - PD Pump or Compressor

The available results that are listed in the table vary depending upon the visible properties that you have selected. Figure 1 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a PD pump.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the pump. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Duty Flow: This is the flow that FluidFlow has calculated that the pump will deliver when it is placed in your system. For a positive displacement pump this will be equal to the operating speed x the volume displacement per revolution less any slip.

Duty Pressure Rise: This is the head that will be developed by a positive displacement pump at the duty flow. A positive displacement pump, in any fixed system will always deliver the head required to overcome system friction and static head differences, whatever the pressure requirement.

In Stagnation Pressure: The stagnation pressure at the pump inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the pump inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the pump inlet, determined by

m/(ρ1 Ap)

Out Stagnation Pressure: The stagnation pressure at the pump outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the pump outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the pump outlet, determined by

m/(ρ2 Ap)


Result Charts

Navigation: Components > Boosters > PD Pump or Compressor >

Return to chapter overview

Result Charts - PD Pump or Compressor

There are no charts for a Positive Displacement Pump.


Calculation Methods

Navigation: Components > Boosters > PD Pump or Compressor >

Return to chapter overview

Calculation Methods - PD Pump or Compressor

The volumetric flow delivered by a positive displacement pump is given by the expression:

Q = S DR Ecorr

or in descriptive terms, operating speed x displacement volume x a volumetric efficiency factor.

The volumetric efficiency factor, by default is 1 unless an entry has been made in the pump database. Volumetric efficiency can be a complex function of operating speed.

If Adiabatic compression is selected as the heat loss model then FluidFlow estimates the output temperature from the expression

T2 = T1(P2/P1)n where pressures and temperatures refer to absolute static conditions and n is the (Cp/Cv-1)/(Cp/Cv) ratio.


Auto-Sizing PD Pumps

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including PD Pumps.

This series of examples demonstrates how these pumps can be automatically sized.

To begin, a Burton Corblin Diaphragm PD pump has been modeled in a 2 inch Schedule 40 steel pipeline with a total length of 18.28 M. Using the calculated information, we can benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the PD pump and Figure 2 gives an overview of the performance of this device in this system.

PdPump Auto Size Fig 1

Figure 1: Data entry for the Diaphragm PD Pump (Auto Size function set to Off).

PdPump Auto Size Fig 2

Figure 2: Diaphragm PD Pump Model (Auto Size function set to Off).

From this analysis, we have established the pump operating performance. The flow rate and duty pressure rise has been calculated as 0.5208 kg/s and (388 Pa) respectively and a NPSHa of 10.1 m fluid has been established.

Auto-Sizing PD Pumps.

Set the Automatically Size field for the pump to "On" and enter a Design Flow rate of 0.5208 kg/s. Note, the field titled Pump Model has now been removed from the Input Editor.

The Input Editor for the pump should now appear as shown in Figure 3.

PdPump Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a PD Pump.

Figure 4 shows the calculated results for the pump. As we can see, FluidFlow has established a duty pressure rise of 388 Pa and a NPSHa of 10.1 m fluid, i.e., exactly matching the results from Figure 2. This element has therefore been automatically sized successfully. Using this data, we can now select a suitable pump model from the database (Burton Corblin Diaphragm PD Pump) or request a proposal from a vendor.

PdPump Auto Size Fig 4

Figure 4: Auto-Sizing a PD Pump.

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Valves

Manually (or remotely) operated valves are typically used in on/off duties. Sometimes a valve can be used in a throttling duty. FluidFlow allows both types of operation to be analyzed.


Valves with 2 connections

There are many different types of manually (or remotely) operated valves. FluidFlow contains data for the following types: Butterfly; Diaphragm; Ball; Gate; Globe; Angle; Ball Float; Plug; Pinch; Y-Globe; Needle; Slide; Penstock and Fire Hydrant. All of these types have 2 connections: an inlet and outlet. It is also possible to use 3-way valves and this is covered in the next chapter.

Design Note: When creating new models in FluidFlow, it is recommended that users do not use the valve icon titled "V2 Unspecified" from the Component Palette/Bar as this valve is available only for backwards compatibility with older versions of the software. This component allows models developed in FluidFlow Version 2 to be successfully imported into the latest release of the software.


Data Entry - Valves (2 Port)

The data entry for all types of valves is very similar. Butterfly; Diaphragm; Ball; Gate; Globe; Angle; Ball Float; Plug; Pinch; Y-Globe; Needle; Slide; Penstock and Fire Hydrant are covered by this description.

Figure 1: Input requirement for a valve.

Unique Name: Allows you to enter a descriptive name for the valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For valves there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Valve Name: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Note, there are a considerable number of valves stored in the database which you can use immediately. You should however note that a number of valves contain the reference "V2 Data". These valves should only be used for backwards compatibility with FluidFlow V2, i.e., importing older V2 files into the FluidFlow v3 series. As such, it is recommended that when modelling new systems in FluidFlow v3, we select from any of the alternative valves types. If you do not have sufficient information on the specific valve you wish to model, you can choose the valve name with the reference "Generic Butterfly Valve - Idelchik" or "Generic Butterfly Valve - Miller Data", etc., in which case, the valve size is determined automatically by the software based on the connected pipe size.

% Open: This is the percentage opening of the valve. In order to utilize this field there must be flow vs. pressure loss data in the valve database for the type of valve you are using. By default all generic type valves already have this information stored.

Quantity: This row allows you to enter a value other than 1, in order to specify the number of valves in a line section. This means that you can simplify your models that contain many valves to a single valve, with a quantity equal to the numbers of valves in the pipe section. You should be aware that this is NOT a recommended approach to use where the fluid phase state is not liquid. This is because the pressure loss is a function of velocity2 and in gas (or two phase flow) the velocity changes with pipe position.

Heat Loss Model: For a valve there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4.

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table - Valves (2 Port)

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a valve.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the valve inlet flow that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the valve will be identical. For incompressible fluids the valve inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the valve. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available for Gas Calculations.

Friction Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the valve inlet. For gases, velocity increases as the fluid moves across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software. Let's consider the valve performance data in Figure 1. The K value displayed for the Gate Valve in the results is the K value calculated from the equation:

K = ΔP / 0.5 * ρ * v^2

where:

ρ is the fluid density at the valve inlet in kg/m3

v is the fluid velocity at the valve inlet in m/s

ΔP is the pressure drop across the valve in Pascals

Therefore, K for the Gate Valve is determined as follows:

K = 37.160216 / 0.5 * 999.101221 * 0.304830^2

K = 37.160216 / 46.41890658

K = 0.8

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available for Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Stagnation Pressure Loss: This is the difference between the inlet and outlet stagnation pressures.

Static Pressure Loss: This is the difference between the inlet and outlet static pressures.


Result Charts - Valves (2 Port)

For all phase states a resistance chart is available. This shows the valve friction loss at various flows.

Resistance Chart 1

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods - Valves (2 Port)

The pressure loss across a valve is a function of flow. In FluidFlow this loss relationship can be expressed as either: K, Kv/Cv, or Kf. Many literature sources contain these values as generic constants. This means that for a given type of valve a specific K (or Kf) value exists, and this is usable over all valve sizes for that specific type of valve. For each type of valve available in FluidFlow there are at least two generic definitions usually obtained from Miller [4], Idelchik [5] or Crane [13].

The pressure loss coefficient, K is defined by the equation:

K = 2 ΔP / (ρv2)

The pressure loss coefficient expressed as equivalent length in terms of pipe diameters, Kf is defined by the equation:

Kf = 0.5 ΔP / (ρfTv2) where fT is the fully turbulent flow friction factor which is simply a function of size.

This definition is used almost exclusively by Crane [13].

The valve flow coefficient, Kv or Cv is expressed by the equation:

Kv = C1 Q (ρ/ΔP)0.5 where C1 is a constant that depends upon the units used.

For maximum accuracy you should obtain valve data directly from the valve manufacturer. If this is not possible then the next best approach is to use the generic relationships.

If you use a generically defined valve (the default), then FluidFlow assumes that the valve size is equal to the connecting pipe size. If this is not the case you should use reducers. You will get a size mismatch warning if inlet and outlet connecting pipe sizes are different.


Valves with 3 connections

3-way valves have 3 pipe connections. 3-way valves can have either a mixing or diverting duty depending upon the valve port arrangement.

In a mixing duty all 3 ports are open and two streams mix together to form a combined stream. In a diverting duty only 2 ports are open this means that flow direction is through the open port with no flow in the pipe connected to the closed port.


Data Entry - Valves (3 Port)

Data entry for a 3 way valve is shown below:

Figure 1: Input requirement for a 3-way valve

Unique Name: Allows you to enter a descriptive name for the 3-way valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For 3-way valves there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Valve Name: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Valve Duty: 3-way valves can have either a mixing or diverting duty depending upon the valve port arrangement. In a mixing duty all 3 ports are open and two streams mix together to form a combined stream. In a diverting duty only 2 ports are open this means that flow direction is through the open port with no flow in the pipe connected to the closed port.

Branch Pipe (RED) or Closed Route RED): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the branch pipe (or closed route) needs to be made with reference to the flowsheet. The possible values depend on the connecting pipe numbers. For a mixing duty you this allows you to select the branch pipe. For a diverting duty this row allows you to select the closed pipe.

Heat Loss Model: For a valve there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table - Valves (3 Port)

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a 3-way valve.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the valve inlet flow (or outlet flow in a mixing duty) that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the valve will be identical. For incompressible fluids the valve inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the valve. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the valve inlet. For gases, velocity increases as the fluid moves across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss across the 3-way valve. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Charts - Valves (3 Port)

For all phase states a resistance chart is available. This shows the valve friction loss at various flows.

Resistance Chart 1

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods - Valves (3 Port)

The pressure loss across a valve is a function of flow. In FluidFlow this loss relationship can be expressed as either: K, Kv/Cv, or Kf.

The pressure loss coefficient, K is defined by the equation:

K = 2 ΔP / (ρv2)

The pressure loss coefficient expressed as equivalent length in terms of pipe diameters, Kf is defined by the equation:

Kf = 2 ΔP / (ρfTv2) where fT is the fully turbulent flow friction factor which is simply a function of size.

This definition is used almost exclusively by Crane [13].

The valve flow coefficient, Kv or Cv is expressed by the equation:

Kv = C1 Q (ρ/ΔP)0.5 where C1 is a constant that depends upon the units used.

For a 3 way valve it is not possible to enter data regarding pressure loss and flow other than for the fully open position.


Controllers

Within flow systems, it is often desired to control flow or pressure at a given location. To achieve this goal some type of control device is needed. If you have specific information from a control valve manufacturer then you can use this information in your designs.


Self-Acting Pressure Sustainer/Reducer

Self acting pressure sustainers and reducers control the pressure at any point in a flow system. The measurement and control mechanisms are encapsulated within a single device. For these types of pressure regulators the static pressure is measured and controlled. If you need to control stagnation pressure or are using say a pitot tube to measure pressure remotely then you should use a pressure control valve instead of the self regulating type.


Data Entry

Navigation: Components > Controllers > Self-Acting Pressure Sustainer/Reducer >

Return to chapter overview

Data Entry - Self-Acting Pressure Sustainer

The entry requirements for a self acting pressure sustainer and reducer are shown below:

Figure 1: Input requirement for a self acting pressure sustaining control valve and for a pressure reducer.

Unique Name: Allows you to enter a descriptive name for the pressure control valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For sustaining (and reducing) control valves there are 2 possible status values: On or Off. On is the normal position and tells the application that this node is open and to calculate the flow through of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to determine the flow coefficient (Cv) for the defined design operating conditions, i.e., control valve set point.

Entry Static Pressure: For a pressure sustainer, this is the design/desired static pressure at the valve inlet that you are trying to achieve. The system solution may or may not be able to provide this pressure. You will receive a warning if it is not possible to achieve the set pressure.

Exit Static Pressure: For a pressure reducer, this is the design/desired static pressure at the valve outlet that you are trying to achieve. The system solution may or may not be able to provide this pressure. You will receive a warning if it is not possible to achieve the set pressure.

Pressure Unit: This is the unit of pressure (or head) that you have used to specify the design or set pressure. You can use either pressure or head units.

Valve Model: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Discharge Pipe (RED): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet. It is necessary to set the discharge pipe correctly so that FluidFlow knows where to control the set pressure.

Heat Loss Model: For a pressure control valves there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4.

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Controllers > Self-Acting Pressure Sustainer/Reducer >

Return to chapter overview

Result Table - Self-Acting Pressure Sustainer

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a self acting pressure reducing (or sustaining) control valve.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Cv: This is the calculated flow coefficient that is needed to provide the design/set pressure.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the control valve that FluidFlow has calculated will be flowing. This flow will adjust in order to achieve the pressure setting you have previously made via the input editor unless the valve is unable to control at the pressure that you have specified.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any valve is not the static pressure, unless there is no flow. If you are using a pressure sustainer this value should equal the set pressure you specified in the input editor.

In Static Temperature: The static temperature at the valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the valve inlet. For gases, velocity increases as the fluid moves across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a valve is not the static pressure, unless there is no flow. If you are using a pressure reducer this value should equal the set pressure you specified in the input editor.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss across the control valve. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

Valve Opening: The valve opening at the calculated flow and set pressure. If the design pressure cannot be achieved then this will be either 100% or 0%.


Result Chart

Navigation: Components > Controllers > Self-Acting Pressure Sustainer/Reducer >

Return to chapter overview

Result Chart - Self-Acting Pressure Sustainer

Charts are not available for control valves.


Calculation Methods

Navigation: Components > Controllers > Self-Acting Pressure Sustainer/Reducer >

Return to chapter overview

Calculation Methods - Self-Acting Pressure Sustainer

The pressure loss across a pressure sustaining or pressure reducing valve is calculated according to the methods and formula given by the Instrumentation Society of America in the standard ISA-S75.01 1985 [19]


Auto-Sizing Self-Acting Pressure Sustainers

Navigation: Components > Controllers > Self-Acting Pressure Sustainer/Reducer >

Return to chapter overview

Auto-Sizing Self-Acting Pressure Sustainers/Reducers

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including self-acting pressure control valves.

This series of examples demonstrates how self-acting pressure sustainers can be automatically sized. The same approach can be used to size self-acting pressure reducers.

To begin, a standard 2 inch butterfly pressure sustainer with an Entry Static Pressure set point of 1.18 atm has been modeled in a 10.0 M long 2 inch Schedule 40 steel pipeline. This allows us to establish the flow rate, pressure loss and Cv for this size of element in this system. We can then benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the 2 inch valve and Figure 2 gives an overview of the performance of this device in this system.

SAPressureSustainer Auto Size Fig 1

Figure 1: Data entry for 2" Pressure Sustainer (Auto Size function set to Off).

SAPressureSustainer Auto Size Fig 2

Figure 2: 2" Pressure Sustainer Model (Auto Size function set to Off).

We can see in Figure 2 that the calculated Cv is 67.9 usgpm/psi, the friction loss is 14105 Pa and the mass flow rate has been calculated as 6.13 kg/s.

Auto-Sizing Pressure Sustainers.

Set the Automatically Size field for the controller to "On" and enter an Entry Static Pressure of 1.18 atm. Note, the field titled Valve Model has now been removed from the Input Editor.

The Input Editor for the sustainer should now appear as shown in Figure 3.

SAPressureSustainer Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a Pressure Sustainer.

Figure 4 shows the calculated results for the sustainer. As we can see, FluidFlow has established a Cv of 67.9 usgpm/psi, a friction loss of 14105 Pa and a mass flow rate of 6.13 kg/s, i.e., exactly matching the results from Figure 2. The element has therefore been automatically sized successfully. We can now select a suitable valve model from the database (2" butterfly valve) or request a proposal from a vendor.

SAPressureSustainer Auto Size Fig 4

Figure 4: Auto-Sizing a Pressure Sustainer.

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Self-Acting Differential Pressure Controller

Self acting differential pressure controllers are used to control differential pressure at any point in a flow system. These devices are often used in district heating systems.


Data Entry

Navigation: Components > Controllers > Self-Acting Differential Pressure Controller >

Return to chapter overview

Data Entry - Self-Acting Differential Pressure Controller

The entry requirements for a self acting differential pressure controller are shown below:

Figure 1: Input requirement for a self acting differential pressure control valve.

Unique Name: Allows you to enter a descriptive name for the differential pressure control valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For differential pressure control valves there are 2 possible status values: On or Off. On is the normal position and tells the application that this node is open and to calculate the flow through of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to determine the flow coefficient (Cv) for the defined design operating conditions, i.e., control valve set point.

Differential Pressure: For a differential pressure control valve, this is the design/desired total pressure loss across the valve. The system solution may or may not be able to provide this pressure loss. You will receive a warning if it is not possible.

Diff Pressure Unit: This is the unit of differential pressure (or head) that you have used to specify the design or set pressure loss. You can use either pressure or head units.

Valve Model: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Heat Loss Model: For a differential pressure control valves there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4.

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Controllers > Self-Acting Differential Pressure Controller >

Return to chapter overview

Result Table - Self-Acting Differential Pressure Controller

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a self acting differential pressure control valve.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Cv: This is the calculated flow coefficient that is needed to position the valve to provide the design/set differential pressure.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the control valve that FluidFlow has calculated will be flowing. This flow will adjust in order to achieve the pressure loss setting you have previously made via the input editor unless the valve is unable to control at the differential pressure that you have specified.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure).

In Stag. Temperature: This is the stagnation temperature at the valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any valve is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the valve inlet. For gases, velocity increases as the fluid moves across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a valve is not the static pressure, unless there is no flow. If you are using a pressure reducer this value should equal the set pressure you specified in the input editor.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss across the control valve and should be equal to the differential pressure set point you have input. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

Valve Opening: The valve opening at the calculated differential pressure. If the differential cannot be achieved then this will be either 100% or 0%.


Result Chart

Navigation: Components > Controllers > Self-Acting Differential Pressure Controller >

Return to chapter overview

Result Chart - Self-Acting Differential Pressure Controller

Charts are not available for control valves.


Calculation Methods

Navigation: Components > Controllers > Self-Acting Differential Pressure Controller >

Return to chapter overview

Calculation Methods - Self-Acting Differential Pressure Controller

The pressure loss across a differential pressure control valve is calculated according to the methods and formula given by the Instrumentation Society of America in the standard ISA-S75.01 1985 [19]


Auto-Sizing a Differential Pressure Controller

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including differential pressure controllers (DPC).

This series of examples demonstrates how a DPC can be automatically sized. To begin, a standard 2 inch DPC with an Exit Static Pressure set point of 1.05 atm has been modeled in a 10.0 M long 2 inch Schedule 40 steel pipeline. This allows us to establish the flow rate, pressure loss and Cv for this size of element in this system. We can then benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the 2 inch DPC and Figure 2 gives an overview of the performance of this device in this system.

DifferentialPressureControl Auto Size Fig 1

Figure 1: Data entry for 2" Differential Pressure Controller (Auto Size function set to Off).

DifferentialPressureControl Auto Size Fig 2

Figure 2: 2" Differential Pressure Controller Model (Auto Size function set to Off).

We can see in Figure 2 that the calculated Cv is 88.9 usgpm/psi, the friction loss is 10264 Pa and the mass flow rate has been calculated as 6.84 kg/s.

Auto-Sizing Differential Pressure Controllers.

Set the Automatically Size field for the controller to "On" and enter a design Exit Static Pressure of 1.05 atm. Note, the field titled Valve Model has now been removed from the Input Editor.

The Input Editor for the controller should now appear as shown in Figure 3.

DifferentialPressureControl Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a 2" Differential Pressure Controller.

Figure 4 shows the calculated results for the controller. As we can see, FluidFlow has established a Cv of 88.9 usgpm/psi, a friction loss of 10264 Pa and a mass flow rate of 6.84 kg/s, i.e., exactly matching the results from Figure 2. The element has therefore been automatically sized successfully. We can now select a suitable valve model from the database (2" butterfly valve) or request a proposal from a vendor.

DifferentialPressureControl Auto Size Fig 4

Figure 4: Auto-Sizing a 2" Differential Pressure Controller.

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Pressure Control Valve

A pressure control valve, together with a measuring device and controller is used to control pressure at any point in a fluid network.


Data Entry

Navigation: Components > Controllers > Pressure Control Valve >

Return to chapter overview

Data Entry - Pressure Control Valve

The entry requirements for a pressure control valve are shown below:

Figure 1: Input requirement for a pressure control valve.

Unique Name: Allows you to enter a descriptive name for the pressure control valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For pressure control valves there are 2 possible status values: On or Off. On is the normal position and tells the application that this node is open and to calculate the flow through of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to determine the flow coefficient (Cv) for the defined design operating conditions, i.e., control valve set point.

Design Pressure: For a pressure controller, this is the design/desired pressure at which you are trying to control. The system solution may or may not be able to provide this pressure. You will receive a warning if it is not possible to achieve the set pressure.

Pressure Unit: This is the unit of pressure (or head) that you have used to specify the design or set pressure. You can use either pressure or head units.

Measurement Location: This value can be "Upstream" or "Downstream". Upstream means that you are attempting to sustain pressure at the valve inlet. Downstream means that you are trying to reduce pressure at the valve outlet.

Measurement Type: Pressure control valves can use various types of measuring devices. Examples are an orifice plate and differential pressure cell (which measures static pressure) or a pitot tube (which measures stagnation pressure). This input row allows you to select for any measuring device. Note that the measuring device in itself may have an associated pressure loss, if this is the case then the measuring device should also be added to the flow system as a separate element.

Valve Model: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Discharge Pipe (RED): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet. It is necessary to set the discharge pipe correctly so that FluidFlow knows where to control the set pressure.

Heat Loss Model: For a pressure control valves there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4.

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Controllers > Pressure Control Valve >

Return to chapter overview

Result Table - Pressure Control Valve

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a gas phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a pressure control valve.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Cv: This is the calculated flow coefficient that is needed to position the valve to provide the design/set pressure.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the control valve that FluidFlow has calculated will be flowing. This flow will adjust in order to achieve the pressure setting you have previously made via the input editor unless the valve is unable to control at the pressure that you have specified. In this case the volumetric flow refers to the actual volume flow at the inlet to the valve.

Flow at NTP: This is the gas volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows across the valve.

Flow at STP: This is the gas volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows across the valve.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any valve is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the valve inlet. For gases, velocity and actual volumetric flow increases as the fluid moves across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a valve is not the static pressure, unless there is no flow. If you are using a pressure reducer this value should equal the set pressure you specified in the input editor.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss across the control valve. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

Valve Opening: The valve opening at the calculated flow and set pressure. If the design pressure cannot be achieved then this will be either 100% or 0%.


Result Chart

Navigation: Components > Controllers > Pressure Control Valve >

Return to chapter overview

Result Chart - Pressure Control Valve

Charts are not available for control valves.


Calculation Methods

Navigation: Components > Controllers > Pressure Control Valve >

Return to chapter overview

Calculation Methods - Pressure Control Valve

The pressure loss across a pressure control valve is calculated according to the methods and formula given by the Instrumentation Society of America in the standard ISA-S75.01 1985 [19]


Auto-Sizing Pressure Control Valve

Navigation: Components > Controllers > Pressure Control Valve >

Return to chapter overview

Auto-Sizing Pressure Control Valves

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including pressure control valves.

This series of examples demonstrates how pressure control valves can be automatically sized. To begin, a standard 1.5 inch butterfly pressure control valve with a Design Pressure set point of 1.18 atm has been modeled in a 10.0 M long 2 inch Schedule 40 steel pipeline. This allows us to establish the flow rate, pressure loss and Cv for this size of element in this system. We can then benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the 1.5 inch valve and Figure 2 gives an overview of the performance of this device in this system.

PressureControlValve Auto Size Fig 1

Figure 1: Data entry for 1.5" Pressure Control Valve (Auto Size function set to Off).

PressureControlValve Auto Size Fig 2

Figure 2: 1.5" Pressure Control Valve Model (Auto Size function set to Off).

We can see in Figure 2 that the calculated Cv is 67.9 usgpm/psi, the friction loss is 14105 Pa and the mass flow rate has been calculated as 6.13 kg/s.

Auto-Sizing Pressure Control Valves.

Set the Automatically Size field for the controller to "On" and enter a Design Pressure of 1.18 atm. Note, the field titled Valve Model has now been removed from the Input Editor.

The Input Editor for the control valve should now appear as shown in Figure 3.

PressureControlValve Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a Pressure Control Valve.

Figure 4 shows the calculated results for the controller. As we can see, FluidFlow has established a Cv of 67.9 usgpm/psi, a friction loss of 14105 Pa and a mass flow rate of 6.13 kg/s, i.e., exactly matching the results from Figure 2. The element has therefore been automatically sized successfully. We can now select a suitable valve model from the database (1.5" butterfly valve) or request a proposal from a vendor.

PressureControlValve Auto Size Fig 4

Figure 4: Auto-Sizing a Pressure Control Valve.

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Flow Control Valve

Navigation: Components > Controllers >

Return to chapter overview

Flow Control Valve (COPY)

A flow control valve, together with a measuring device and controller is used to control flow at any point in a fluid network.


Data Entry

Navigation: Components > Controllers > Flow Control Valve >

Return to chapter overview

Data Entry - Flow Control Valve

For flow control valves the following data is required:

Figure 1: Input requirement for a flow control valve.

Unique Name: Allows you to enter a descriptive name for the flow control valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For flow control valves there are 2 possible status values: On or Off. On is the normal position and tells the application that this node is open and to calculate the flow through of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to determine the flow coefficient (Cv) for the defined design operating conditions, i.e., control valve set point.

Design Flow: This is the flow that you are setting to pass through this valve. The system solution may or may not be able to provide this flow. You will receive a warning if it is not possible to achieve the set flow.

Note, when setting the flow control valve Automatically Size field to "On", it is important we don't duplicate the flow in the system, for instance, we cannot model this scenario in series with a Known Flow boundary node or an orifice plate or centrifugal pump which has the Automatically Size field set to "On".

Flow Unit: This is the unit of flow that you have used to specify the design flow or set flow. You can use either volumetric or mass flow units.

Measurement Location: This value can be "Upstream" or "Downstream". Actual volumetric flow for gases and two phase mixtures is a function of position. Upstream means that you are attempting to control volume flow at the valve inlet temperature and pressure conditions. Downstream means that you are trying to control flow at the valve outlet temperature and pressure conditions. If you use mass flow in this entry then the measurement location is not used.

Valve Model: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Discharge Pipe (RED): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet.

Heat Loss Model: For a flow control valves there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Controllers > Flow Control Valve >

Return to chapter overview

Result Table - Flow Control Valve

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a self acting flow control valve.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Cv: This is the calculated flow coefficient that is needed to pass the design flow.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the control valve that FluidFlow has calculated will be flowing. Of course this should be equal to the design flow setting you have previously made via the input editor unless the valve is unable to control at the flow that you have specified.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the valve inlet. For gases, velocity increases as the fluid moves across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss across the control valve. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)

Valve Opening: The valve opening at the calculated flow. If the design flow cannot be achieved then this will be either 100% or 0%.


Result Chart

Navigation: Components > Controllers > Flow Control Valve >

Return to chapter overview

Result Chart - Flow Control Valve

Charts are not available for control valves.


Calculation Methods

Navigation: Components > Controllers > Flow Control Valve >

Return to chapter overview

Calculation Methods - Flow Control Valve

The pressure loss across a flow control valve is calculated according to the methods and formula given by the Instrumentation Society of America in the standard ISA-S75.01 1985 [19]


Auto-Sizing Flow Control Valves

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including flow control valves.

This series of examples demonstrates how these valves can be automatically sized.

To begin, a standard 2 inch butterfly valve with a design flow rate of 10m3/h has been modeled in a 20.0 ft long 2 inch Schedule 40 steel pipeline transporting water. This allows us to establish the pressure loss and Cv for this size of element in this system. We can then benchmark our automatically sized element against this base model. A copy of this model can be found in the folder: "QA Equipment Sizing".

Figure 1 shows the data entry for the 2 inch valve and Figure 2 gives an overview of the performance of this device in this system.

FlowControlValve Auto Size Fig 1

Figure 1: Data entry for 2" Flow Control Valve (Auto Size function set to Off).

FlowControlValve Auto Size Fig 2

Figure 2: 2" Flow Control Valve Model (Auto Size function set to Off).

We can see in Figure 2 that the calculated Cv is 15.9 usgpm/psi and the friction loss is 52990 Pa.

Auto-Sizing Flow Control Valves.

Set the Automatically Size field for the controller to "On" and enter a design flow rate of 10m3/h. Note, the field titled Valve Model has now been removed from the Input Editor.

The Input Editor for the valve should now appear as shown in Figure 3.

FlowControlValve Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a Flow Control Valve.

Figure 4 shows the calculated results for the valve. As we can see, FluidFlow has established a Cv of 15.9 usgpm/psi and a friction loss of 52990 Pa, i.e., exactly matching the results from Figure 2. The element has therefore been automatically sized successfully. We can now select a suitable valve model from the database (2" butterfly valve) or request a proposal from a vendor.

FlowControlValve Auto Size Fig 4

Figure 4: Auto-Sizing a Flow Control Valve.

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Gas Regulator

A gas regulator is used to control the gas pressure at any point in a fluid network.


Data Entry

Navigation: Components > Controllers > Gas Regulator >

Return to chapter overview

Data Entry - Gas Regulator

The data entry requirements for a gas regulator is shown below:

Figure 1: Input requirement for a pressure control valve.

Unique Name: Allows you to enter a descriptive name for the pressure control valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For pressure control valves there are 2 possible status values: On or Off. On is the normal position and tells the application that this node is open and to calculate the flow through of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Control Valve Type: For gas regulators there are 3 possible status settings: Local Regulation, Regulating Maximum Flow, or Fully Open. Local Regulation requires the user to specify a setpoint pressure and the regulator will throttle to that design pressure. Regulating Maximum Flow means the absolute maximum flow possible through the regulator will be calculated based on the ISA or Universal method (set in the regulator database). Fully open means the regulator is set to fully open.

Control Static Pressure: For a gas regulator, this is the user defined design static pressure at the outlet of the regulator.

Pressure Unit: This is the unit of pressure (or head) that you have used to specify the design or set pressure. You can use either pressure or head units.

Valve Model: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Heat Loss Model: For a gas regulator there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Controllers > Gas Regulator >

Return to chapter overview

Result Table - Gas Regulator

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a gas phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a gas regulator.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Cv: This is the calculated flow coefficient for the regulator.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the gas regulator that FluidFlow has calculated will be flowing. This flow will adjust in order achieve the pressure setting you have previously made via the input editor unless the regulator is unable to control at the pressure that you have specified. In this case the volumetric flow refers to the actual volume flow at the inlet to the regulator.

Flow at NTP: This is the gas volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows across the regulator.

Flow at STP: This is the gas volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows across the regulator.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Density: The fluid density at the regulator inlet conditions. Density depends on temperature and pressure of the fluid.

In Fluid Phase: The fluid phase state at the regulator inlet.

In Stagnation Pressure: The stagnation pressure at the regulator inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the regulator inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any regulator is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the regulator inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the regulator inlet. For gases, velocity and actual volumetric flow increases as the fluid moves across the regulator. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Density: The fluid density at the regulator outlet conditions. Density depends on temperature and pressure of the fluid.

Out Fluid Phase: The phase state at the regulator outlet.

Out Stagnation Pressure: The stagnation pressure at the regulator outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the regulator outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a regulator is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the regulator outlet. For gases, velocity increases as the fluid flows across the regulator. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss across the regulator. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > Controllers > Gas Regulator >

Return to chapter overview

Result Chart - Gas Regulator

Charts are not available for gas regulators.


Calculation Methods

Navigation: Components > Controllers > Gas Regulator >

Return to chapter overview

Calculation Methods - Gas Regulator

FluidFlow includes two flow equations for modelling regulators in compressible flow systems. The methods which users can choose from are the Standardized Method (ISA-75.01.01 2007) and the Traditional Method (Universal Equation).

Standardized Method - ISA-75.01.01 2007 Equation.

Cv = w / N6 Y (x P1 ρ1)0.5.

where:

w is the mass flow rate.

ρ1 is the specific gravity of the gas (ratio of density of flowing gas to density of air with both at STP conditions).

N6 is the numerical constant used to convert units in the equation. The value of N6 is automatically determined by FluidFlow.

Cv is the regulator flow coefficient as defined in the database.

Y is the gas expansion factor.

P1 is the regulator valve inlet absolute static pressure (kPa a).

x is the ratio of the static pressure differential to the absolute static pressure (ΔP/p1) at the regulator inlet (kPa).

Traditional Method - Universal Equation.

Qlb/hr = 1.06 (d1 P1)0.5 Cg SIN (3417 / C1) (ΔP / P1)0.5 Deg.

where:

Qlb/hr is the gas flow rate (lb/hr).

d1 is the gas density of the gas or vapor at the regulator inlet (lb/ft3).

Cg is the gas sizing coefficient.

ΔP is the static pressure loss across the valve (psi).

P1 is the regulator valve inlet absolute static pressure (psi a).

C1 is equal to Cg/Cv.

Note, the above equation is also known as "the density form of the Universal Gas Sizing Equation". This equation is used to predict flow for perfect or non-perfect gas sizing applications, for any vapor including steam, at any service condition when fluid density is known.

The Standardized Method is accepted worldwide for its level of accuracy.


Check Valves

Check Valves (also called Non-Return Valves) are unidirectional. Flow is only allowed to pass in one direction, and this property has many uses in flow systems. An example would be to place a non return valve on the discharge side of a pump to prevent backflow through the pump at shut down.


All types of Non Return Valves

The types of non-return valves available in FluidFlow are: Swing; Tilting Disc; Piston Operated; Foot Operated and Spring Loaded types.


Data Entry

Navigation: Components > Check Valves > All types of Non Return Valves >

Return to chapter overview

Data Entry - Check Valves

The data entry for all types of check valves is very similar. Swing; Tilting Disc; Piston Operated; Foot Operated and Spring Loaded types are covered by this description.

Figure 1: Input requirement for a check valve.

Unique Name: Allows you to enter a descriptive name for the check valve. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For check valves there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close valves to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

NRV Name: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a valve model selection.

Discharge Pipe (RED): You cannot change this value directly by typing an entry. Instead when you focus on this row a button appears at the right edge. This means the selection of the discharge pipe needs to be made with reference to the flowsheet. Flow will always be in the direction of the discharge line. FluidFlow will prevent flow into the valve via the discharge line.

Heat Loss Model: For a check valve there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the valve is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the valve. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the check valve. Into Network means that the temperature of the fluid is increased as the fluid flows through the valve.

Temperature Change: Use this row to specify the temperature change that occurs across the check valve. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a valve. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Check Valves > All types of Non Return Valves >

Return to chapter overview

Result Table - Check Valves

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a non return valve.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the valve inlet flow that FluidFlow has calculated will be flowing. For all phase states the mass flow into and out of the valve will be identical. For incompressible fluids the valve inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the valve. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the valve inlet. For gases, velocity increases as the fluid moves across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > Check Valves > All types of Non Return Valves >

Return to chapter overview

Result Chart - Check Valves

For all phase states a resistance chart is available. This shows the valve friction loss at various flows.

Resistance Chart 1

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Check Valves > All types of Non Return Valves >

Return to chapter overview

Calculation Methods - Check Valves

The pressure loss across a valve is a function of flow. In FluidFlow this loss relationship can be expressed as either: K, Idelchik, or Kf. Many literature sources contain these values as generic constants. This means that for a given type of valve a specific K (or Kf) value exists, and this is usable over all valve sizes for that specific type of valve. For each type of valve available in FluidFlow there are at least two generic definitions usually obtained from Miller [4], Idelchik [5] or Crane [13].

The pressure loss coefficient, K is defined by the equation:

K = 2 ΔP / (ρv2)

The pressure loss coefficient expressed as equivalent length in terms of pipe diameters, Kf is defined by the equation:

Kf = 2 ΔP / (ρfTv2) where fT is the fully turbulent flow friction factor which is simply a function of size.

Idelchik provides K values as a function of size and these values are used directly by FluidFlow if you select this type of relationship in the check valve database.

For maximum accuracy you should obtain valve data directly from the valve manufacturer. If this is not possible then the next best approach is to use the generic relationships.


General Resistances

There are many types of pipe fittings that offer a resistance to flow that do not fit logically into the existing component groups. These types are available from the General Resistances of the Component palette. The resistance of many types of fittings can be described by K, Kf or Kv type relationships. In addition this group of elements contains the following specific pipe fittings: Filter; Packed bed; Cyclone; Labyrinth Seals; Expansion Joints and Stuffing Boxes; Centrifuge; Pipe Coil; Tube Bundles (flow inside and outside); and Constant Head Loss elements.

For those devices that do not fit into any of the above categories, there is a User Defined Generic element that can be used to define any pressure loss against flow relationship.


K (Pressure Loss Coefficient)

A K value is the most common way of expressing the pressure loss relationship as a function of flow. There are many types of pipe fittings that are described by K values. (see Miller [4], or Idelchik [5]). For this reason it is possible to enter any type of fitting into the FluidFlow database, but FluidFlow does not force you to work in this way as it is also possible to add/change a K value directly via the Input Editor.


Data Entry - K (Pressure Loss Coefficient)

The data entry requirement for a K element is shown below:

Figure 1: Data Entry for a K element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Use K from Database: This entry allows you to access commonly used K values from the FluidFlow database. The possible values are: "Yes"; "No". Selecting "Yes" allows you to select the K element directly from the K Component Name row. Selecting "No", exposes a row "K (Pressure Loss Coeff)", that allows you to directly enter any K value as shown in Figure 2.

Figure 2: Direct entry of a K value.

K Component Name: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a K element selection.

K (Pressure Loss Coeff): This row allows you to directly enter a K value. The pressure Loss Coefficient, K, is defined by the equation: K = ΔP / (0.5 ρv2).

Quantity: This row allows you to enter a value other than 1, in order to specify the number of K elements in a line section. This means that you can simplify your models that contain many K elements, with a quantity equal to the numbers of K elements in the pipe section. You should be aware that this is NOT a recommended approach to use where the fluid phase state is not liquid. This is because the pressure loss is a function of velocity2 and in gas (or two phase flow) the velocity changes with pipe position.

Heat Loss Model: For a K element there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the K element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the K element. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the K element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the K element. Into Network means that the temperature of the fluid is increased as the fluid flows through the K element.

Temperature Change: Use this row to specify the temperature change that occurs across the K element. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the K element as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a K element. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the K element as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table - K (Pressure Loss Coefficient)

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a K element.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the K element. For all phase states the mass flow into and out of the K element will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the K element. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the K element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the K element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any K element is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the K element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the K element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the K element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the K element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a K element is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the K element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the K element outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart - K (Pressure Loss Coefficient)

For all phase states a resistance chart is available. This shows the K element friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods - K (Pressure Loss Coefficient)

The pressure loss coefficient, K is defined by the equation:

K = ΔP / (0.5 ρv2)


Kf (Equivalent length in pipe diameters)

A Kf value is sometimes used to express the pressure loss relationship as a function of flow. There are many types of pipe fittings that are described by Kf values which can be found in Crane [13]. It is possible to enter any type of fitting into the FluidFlow database, but FluidFlow does not force you to work in this way as it is also possible to add/change a Kf value directly via the Input Editor.


Data Entry - Kf (Equivalent length in pipe diameters)

The data entry requirement for a Kf element is shown below:

Figure 1: Data Entry for a Kf element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Use Kf from Database: This entry allows you to access commonly used Kf values from the FluidFlow database. The possible values are: "Yes"; "No". Selecting "Yes" allows you to select the Kf element directly from the Kf Component Name row. Selecting "No", exposes a row "K (Pressure Loss Coeff)", that allows you to directly enter any K value as shown in Figure 2.

Figure 2: Direct entry of a Kf value.

Kf Component Name: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a Kf element selection.

Kf (L/D): This row allows you to directly enter a Kf value. The coefficient, Kf, is defined by the equation: Kf = ΔP / (0.5 r fT v2).

Quantity: This row allows you to enter a value other than 1, in order to specify the number of Kf elements in a line section. This means that you can simplify your models that contain many Kf elements, with a quantity equal to the numbers of Kf elements in the pipe section. You should be aware that this is NOT a recommended approach to use where the fluid phase state is not liquid. This is because the pressure loss is a function of velocity2 and in gas (or two phase flow) the velocity changes with pipe position.

Heat Loss Model: For a Kf element there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the Kf element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the Kf element. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the Kf element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the Kf element. Into Network means that the temperature of the fluid is increased as the fluid flows through the Kf element.

Temperature Change: Use this row to specify the temperature change that occurs across the Kf element. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the Kf element as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a Kf element. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the Kf element as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table - Kf (Equivalent length in pipe diameters)

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Kf element.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the Kf element. For all phase states the mass flow into and out of the Kf element will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the Kf element. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the Kf element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the Kf element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any Kf element is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the Kf element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the Kf element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the Kf element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the Kf element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a Kf element is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the Kf element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the Kf element outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart - Kf (Equivalent length in pipe diameters)

For all phase states a resistance chart is available. This shows the Kf element friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods Kf (Equivalent length in pipe diameters)

Navigation: Components > General Resistances > Kf (Equivalent length in pipe diameters) >

Return to chapter overview

Calculation Methods - Kf (Equivalent length in pipe diameters)

The pressure loss coefficient expressed as equivalent length in terms of pipe diameters, Kf is defined by the equation:

Kf = ΔP / (0.5 r fT v2) where: fT is the fully turbulent flow friction factor (Darcy) which is simply a function of size.

This definition is used almost exclusively by Crane [13].


Kv (Flow Coefficient)

A Kv value is sometimes used to express the pressure loss relationship as a function of flow. There are many types of equipment items and pipe fittings that can be described by Kv values. To use this type of loss element you must know a pressure loss for a given flow across that element. Often this data can be obtained from a manufacturer. It is possible to enter this type of fitting into the FluidFlow database, but FluidFlow does not force you to work in this way as it is also possible to add/change a Kv value directly (or rather the reference conditions) via the Input Editor.


Data Entry - Kv (Flow Coefficient)

The data entry requirement for a Kv element is shown below:

Figure 1: Data Entry for a Kv element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Use Kv from Database: This entry allows you to access commonly used Kv values from the FluidFlow database. The possible values are: "Yes"; "No". Selecting "Yes" allows you to select the Kv element directly from the Kv Component Name row. Selecting "No", exposes a series of rows allowing you to enter sufficient data to define the Kv value within FluidFlow shown in Figure 2.

Kv Component Name: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a K element selection.

Figure 2: Direct entry of a Kv value.

In order to utilize data entered directly for a Kv element, we need to specify the pressure loss across the element at any given flow. You can usually obtain this information from the manufacturer, or you may have plant test data. The following 7 rows in the Input Editor define this for FluidFlow.

Flow: The flow used to define the pressure loss data for a Kv element. This flow corresponds with the pressure loss at this flow.

Flow Unit: The flow unit that defines the flow data. You can use mass or volumetric flow units.

Pressure Loss: The pressure loss that exists at the flow specified above.

Pressure Loss Unit: The pressure loss unit that defines the pressure loss. You can use pressure or head loss units.

Reference Density: The density of the fluid was used to obtain the flow and pressure loss data.

Density Unit: The units of density of the reference or test fluid.

Exponent: This is the exponent used to scale the reference pressure drop and flow. Normally the pressure loss is a function of flow squared and so this exponent is 2. For some complex/specialized equipment this may be slightly different from 2. If you have two pressure loss and flow readings you can adjust this exponent so that the curve passes exactly through your experimental data.

Design Notes: If you have a full pressure loss curve relationship for your fitting, a sensible reference coordinate for the Kv node would be a midpoint coordinate on the Flow vs. Pressure loss curve. FluidFlow will then automatically scale up or down depending on the actual flow experienced in the system. Equipment data sheets are also usually provided with details of the reference fluid density (typically water or air depending on the fitting). This therefore allows us to define all required parameters for the Kv component.

Once you have determined the input parameters for the Kv node, it is recommended that you create a test model containing your Kv component prior to adding it to your specific system. Care should be taken to ensure the status of the pipes in the test model are set to Ignore Pressure Loss. This will eliminate the effects of the pipe losses on the test results for the Kv node. You can then run a simulation for a series of known flow rates available on the manufacturers flow axis and benchmark the calculated pressure loss results against the manufacturer's curve data for accuracy. If the results correlate well, then you know the Kv parameters are defined correctly. You can then model the Kv node in your system with confidence.

It should be borne in mind that when scaling the flow rate up or down from the reference coordinate, the calculated accuracy may deviate slightly from the manufacturer's curve data. If you require a much higher level of accuracy, you should use the User Defined Generic resistance node user defined available from the General Resistance Chart. The approach to take when using this node is set out at: Components | User Defined Generic | Flame Arrester Example.

The pressure loss through a Kv component is a function of flow (squared), which in turn, is a function of fluid physical properties and the engineering conditions which apply. If we are modelling a plant transporting water, then the fluid viscosity effects are minimal. If however we are modelling a system with a thick viscous fluid, FluidFlow will take into account the viscosity effects in the system which dictate the flow condition at the Kv node. The viscosity effects are therefore implicit in the variables used to calculate the pressure loss across the Kv node at actual flowing conditions.

If you require a high level of accuracy, then, it is recommended that you approach the manufacturer and request the pressure loss curve for the fitting based on the physical properties (density, viscosity, etc.) of the thick viscous fluid you shall be using in the plant.

Quantity: This row allows you to enter a value other than 1, in order to specify the number of Kv elements in a line section. This means that you can simplify your models that contain many Kv elements, with a quantity equal to the numbers of Kv elements in the pipe section. You should be aware that this is NOT a recommended approach to use where the fluid phase state is not liquid. This is because the pressure loss is a function of velocity2 and in gas (or two phase flow) the velocity changes with pipe position.

Heat Loss Model: For a Kv element there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the Kv element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the Kv element. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the Kv element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the Kv element. Into Network means that the temperature of the fluid is increased as the fluid flows through the Kv element.

Temperature Change: Use this row to specify the temperature change that occurs across the Kv element. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the Kv element as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a Kv element. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the Kv element as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table - Kv (Flow Coefficient)

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Kv element.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the Kv element. For all phase states the mass flow into and out of the Kv element will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the Kv element. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the Kv element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the Kv element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any Kv element is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the Kv element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the Kv element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the Kv element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the Kv element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a Kv element is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the Kv element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the Kv element outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart - Kv (Flow Coefficient)

For all phase states a resistance chart is available. This shows the Kv element friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods - Kv (Flow Coefficient)

To utilize this type of flow coefficient you must know a pressure loss at a given flow. This information is often obtained from the fitting manufacturer. FluidFlow utilizes this data and adjusts it to the calculated flow conditions.

The pressure loss across a flow coefficient element adjustment is expressed by the equation:

For liquids and slurries:

ΔP = (ρRef/ρ)n-1 (m/mRef)n ΔPRef

where:

ΔP is the calculated pressure loss (Pa).

ρRef is the reference density defined in the Input Inspector (kg/m3).

ρ is the fluid density at flowing conditions (kg/m3).

mRef is the reference flow rate defined in the Input Inspector (kg/s). Note, you can define either mass or volumetric flow units. When volumetric flow units have been defined, FluidFlow will automatically convert to mass flow units based on the reference density defined for ρRef.

m is the calculated mass flow in the system (kg/s).

ΔPRef is the reference pressure loss defined in the Input Inspector (kg/m3).

n is the exponent defined in the Input Inspector (usually 2 - normally the pressure loss is a function of flow squared).

Note, if you have set the field titled "Use Kv from Database", FluidFlow obtains the required reference conditions/parameters noted above from the database.

FluidFlow modifies this formula for gas and two phase flow.


Filter

Filters are used in many flow networks. An example would be the use of a strainer in a pump suction line.


Data Entry

Navigation: Components > General Resistances > Filter >

Return to chapter overview

Data Entry - Filter

The data entry requirement for a filter element is shown below:

Figure 1: Data Entry for a filter element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Filter Name: You cannot add a name directly into this row by typing an entry. Instead when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component Dialog, which allows you to make a K element selection.

Hole/Total Area Ratio: This is the free area / total area ratio for the filter.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Quantity: This row allows you to enter a value other than 1, in order to specify the number of filters in a line section. This means that you can simplify your models that contain many filters, with a quantity equal to the numbers of filters in the pipe section. You should be aware that this is NOT a recommended approach to use where the fluid phase state is not liquid. This is because the pressure loss is a function of velocity2 and in gas (or two phase flow) the velocity changes with pipe position.

Heat Loss Model: For a filter there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the filter is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the filter. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the filter.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the filter. Into Network means that the temperature of the fluid is increased as the fluid flows through the filter.

Temperature Change: Use this row to specify the temperature change that occurs across the filter. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the filter as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a filter. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the filter as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > General Resistances > Filter >

Return to chapter overview

Result Table - Filter

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a filter.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the filter. For all phase states the mass flow into and out of the filter will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the filter. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the filter inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the filter inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any filter is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the filter inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the filter inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the filter outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the filter outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a filter is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the filter outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the filter outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > General Resistances > Filter >

Return to chapter overview

Result Chart - Filter

For all phase states a resistance chart is available. This shows the filter friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > General Resistances > Filter >

Return to chapter overview

Calculation Methods - Filter

For pressure loss an inline filter FluidFlow uses a K value calculated from the hole / total area ratio according to the method provided in Idelchik [5].

The pressure loss coefficient, K is defined by the equation:

K = 2 ΔP / (ρv2)


Packed Bed

Packed beds are used in the process and water industries. Packed beds provide a large surface area for contact between a fluid and a solid and this is utilized in many processes (absorption, chemical reactions, ion exchange, etc.). A typical packed bed is a cylindrical column that is filled with a suitable packing material. The fluid is usually distributed as evenly as possible on entry into the column.


Data Entry

Navigation: Components > General Resistances > Packed Bed >

Return to chapter overview

Data Entry - Packed Bed

The data entry requirement for a packed bed element is shown below:

Figure 1: Data Entry for a packed bed element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Bed Height: The total height or length of the packing material in the packed bed.

Height Unit: The unit of length used to define the bed height.

Bed Diameter: The total diameter of the packing in the packed bed.

Particle Void Fraction: Void fraction of a packed bed, this is the ratio of the void volume to the total volume.

Mean Particle Diameter: The equivalent spherical diameter of the particles in the packed bed. Defined as 6 x Volume of the particle/surface area of the particle.

Particle Diameter Unit: The unit of length used to define the mean particle diameter.

Heat Loss Model: For a packed bed there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the packed bed is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the packed bed. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the packed bed.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the packed bed. Into Network means that the temperature of the fluid is increased as the fluid flows through the packed bed.

Temperature Change: Use this row to specify the temperature change that occurs across the packed bed. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the packed bed as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a packed bed. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the packed bed as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > General Resistances > Packed Bed >

Return to chapter overview

Result Table - Packed Bed

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a packed bed.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the packed bed. For all phase states the mass flow into and out of the packed bed will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the packed bed. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element. NOTE: This result is available in Gas Calculations.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

In Stagnation Pressure: The stagnation pressure at the packed bed inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the packed bed inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a packed bed is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the packed bed inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the packed bed inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure. NOTE: This result is available in Gas Calculations.

Out Stagnation Pressure: The stagnation pressure at the packed bed outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the packed bed outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a packed bed is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the packed bed outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the packed bed outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > General Resistances > Packed Bed >

Return to chapter overview

Result Chart - Packed Bed

For all phase states a resistance chart is available. This shows the friction loss at various flows for a packed bed.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > General Resistances > Packed Bed >

Return to chapter overview

Calculation Methods - Packed Bed

Packed beds exhibit a pressure loss as the fluid flows through the bed. FluidFlow uses the Ergun equation to estimate the friction factor and pressure loss. The Ergun equation is commonly expressed as:

ΔP = fp Hb ρ Vs2 (ε3/(1-ε) / Dp

where fp is the friction factor and is defined by the equation:

fp = 150/Rep + 1.75 and the Reynolds number is defined as:

Rep = Dp Vs ρ / ((1-ε) μ)


Cyclone

Cyclones are commonly used to separate dust from gas streams. Within their range of performance capabilities cyclones offer the least expensive means of dust collection, both from a capital and operating cost.


Data Entry

Navigation: Components > General Resistances > Cyclone >

Return to chapter overview

Data Entry - Cyclone

The data entry requirement for a cyclone element is shown below:

Figure 1: Data Entry for a cyclone element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Cyclone Loss Correlation: The pressure Loss relationship that FluidFlow will use to calculate the loss through the cyclone. The available options are: "Basic Principles"; "Miller and Lissman"; "Shepherd and Lapple"; "Casal and Martinez-Benet". The pressure loss calculation methods are explained in Perry [20].

Inlet Geometry: This refers to the shape of the fluid inlet arrangements to the cyclone. The allowable options for the inlet geometry are: "Cylindrical"; "Rectangular/Square". Selecting "Rectangular/Square" exposes the following rows where the rectangular dimensions are entered.

Figure 2: Data entry for a cyclone with rectangular inlet pipe.

Inlet W: The inlet width of a rectangular or square cyclone inlet.

Inlet H: The inlet height of a rectangular or square cyclone inlet.

Inlet Diameter: The inlet diameter for a cylindrical cyclone inlet.

Cyclone Diameter: The inside diameter of the cyclone body.

Outlet Diameter: The diameter of the cyclone exit.

Size Unit: The unit of length used to define the cyclone, inlet, outlet and body diameters.

Heat Loss Model: For a cyclone there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the cyclone is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the cyclone. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the cyclone.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the cyclone. Into Network means that the temperature of the fluid is increased as the fluid flows through the cyclone.

Temperature Change: Use this row to specify the temperature change that occurs across the cyclone. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the cyclone as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a cyclone. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the cyclone as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > General Resistances > Cyclone >

Return to chapter overview

Result Table - Cyclone

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a gas phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a cyclone.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the cyclone. For all phase states the mass flow into and out of the cyclone will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the cyclone. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure.

In Stagnation Pressure: The stagnation pressure at the cyclone inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the cyclone inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a cyclone is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the cyclone inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the cyclone inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the outlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo physical property and depends on temperature and pressure.

Out Stagnation Pressure: The stagnation pressure at the cyclone outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the cyclone outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a cyclone is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the cyclone outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the cyclone outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > General Resistances > Cyclone >

Return to chapter overview

Result Chart - Cyclone

For all phase states a resistance chart is available. This shows the friction loss at various flows for a cyclone separator.

Resistance Chart 1

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > General Resistances > Cyclone >

Return to chapter overview

Calculation Methods - Cyclone

FluidFlow can calculate the pressure loss over a cyclone separator by any one of 4 available methods. The method used is determined by your input setting "Cyclone Loss Correlation". See Perry [20] for a more detailed description.

For all loss correlations inlet and outlet losses are added and these are estimated by:

Inlet Loss = ΔP1 = 0.5 ρ1 V12

Outlet Loss = ΔP2 = 0.5 ρ2 V22

The available calculation methods are:

1. Basic Principles:

ΔP = 0.5 ρ V2 (Dc/D2 - 1)

where:

D2 is the cyclone outlet diameter.

The general literature consensus seems to be that estimating the pressure loss from first principles is not very accurate. Hence the following estimation methods are also available.

2. Miller/Lissman:

ΔP = K' (Dc/D2)2

where:

K' is typically 3.2 for a wide range of configurations.

3. Shepard/Lappel:

ΔP = K" (D1/D2)2

where:

K" is typically in the range 12 to 15.

4. Casal:

ΔP = 0.5 ρ V2 Nh

where:

Nh = 11.4 (D1/D2)2 + 3.33


Labyrinth Seal

A labyrinth seal is a mechanical seal that fits around a rotor to prevent fluid leakage along the rotor shaft. Typically the seal is composed of many straight threads which interlock in order to produce a long and tortuous path for the fluid to escape.

The labyrinth seal element within FluidFlow is a custom element, designed for the specific case of compressor oil seals for one of our customers. The relationships used are proprietary and probably not generic. If you have a similar application, or would like to discuss the suitability of this element in your application please contact support@fluidflowinfo.com directly.


Centrifuge

A centrifuge is a rotating device that is used for separation.

The centrifuge element within FluidFlow is a custom element, designed for the specific case of oil separation for one of our customers. The relationships used are proprietary and probably not generic. If you have a similar application, or would like to discuss the suitability of this element in your application please contact support@fluidflowinfo.com directly.


Expansion Joint/Stuffing Box

Pipe expansion joints are often used in longer pipe runs. FluidFlow allows II shaped or Lyre shaped expansion joints to be included in your fluid networks.


Data Entry

Navigation: Components > General Resistances > Expansion Joint/Stuffing Box >

Return to chapter overview

Data Entry - Expansion Joint/Stuffing Box

The data entry requirement for an expansion joint or stuffing box element is shown below:

Figure 1: Data Entry for an expansion joint.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Expansion Type: The type of expansion that you are using. This can be: 1) Lyre Bend, 2) II Shaped Bend or 3) Stuffing Box. If we select Lyre Bend or Stuffing Box, FluidFlow automatically calculates the resistance coefficient K using the equations outlined in Calculation Methods - Expansion Joint/Stuffing Box.

If we set the "Expansion Type" to II Shaped Bend, Figure 2 shows the additional data entries that are required.

Figure 2: Expansion Type II Shaped Bend.

Expansion Loop Width: This sets the width of the expansion loop pipe section.

Expansion Loop Height: This sets the height of the expansion loop pipe section.

Width/Height Unit: This refers to the unit you wish to use for entering the pipe width and height described above.

Heat Loss Model: For an expansion there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the expansion is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the expansion. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the expansion.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 3 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the expansion. Into Network means that the temperature of the fluid is increased as the fluid flows through the expansion.

Temperature Change: Use this row to specify the temperature change that occurs across the expansion. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the expansion as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) an expansion. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the expansion as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > General Resistances > Expansion Joint/Stuffing Box >

Return to chapter overview

Result Table - Expansion Joint/Stuffing Box

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a gas phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for an Expansion Joint/Stuffing box.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the element. For all phase states, the mass flow into and out of the element will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the element. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Friction Loss: This is the calculated total pressure loss due to friction.

In Stagnation Pressure: The stagnation pressure at the element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside the element is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the cyclone inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside the element is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the cyclone outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the element outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.


Result Chart

Navigation: Components > General Resistances > Expansion Joint/Stuffing Box >

Return to chapter overview

Result Chart - Expansion Joint/Stuffing Box

For all phase states a resistance chart is available. This shows the friction loss at various flows for an expansion joint

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > General Resistances > Expansion Joint/Stuffing Box >

Return to chapter overview

Calculation Methods - Expansion Joint/Stuffing Box

For pipe expansion joints the calculation of pressure loss is explained below:

1. For Lyre Bends, a pressure loss coefficient, K is determined by pipe outside diameter, according to the formula:

K = 1.6 + 2 Doutside

The calculated K value is then used in the expression K = 2 ΔP / (ρv2)

2. For II shaped expansion bends the pressure loss coefficient is calculated according to the formula:

K = 1.9 + 2 Doutside

The calculated K value is then used in the expression K = 2 ΔP / (ρv2)

3. For stuffing boxes FluidFlow uses a K value of 0.2. Idelchik [5]


Pipe Coil

Pipe coils are used mainly for cooling heating purposes. For example a coil inside a vessel or a coil wrapped around a vessel.


Data Entry

Navigation: Components > General Resistances > Pipe Coil >

Return to chapter overview

Data Entry - Pipe Coil

The data entry requirement for a pipe coil element is shown below:

Figure 1: Data Entry for a pipe coil.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Coil Diameter: The mean diameter of the coil.

Coil Length: The length of pipe in the coil.

Coil Size Unit: The length unit that defines the coil diameter and length of piping in the coil.

Heat Loss Model: For a pipe coil there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the pipe coil is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the pipe coil. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the pipe coil.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the pipe coil. Into Network means that the temperature of the fluid is increased as the fluid flows through the pipe coil.

Temperature Change: Use this row to specify the temperature change that occurs across the pipe coil. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the pipe coil as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a pipe coil. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the pipe coil as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > General Resistances > Pipe Coil >

Return to chapter overview

Result Table - Pipe Coil

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a pipe coil.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the pipe coil. For all phase states the mass flow into and out of the pipe coil will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the pipe coil. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the pipe coil inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the pipe coil inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a pipe coil is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the pipe coil inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the pipe coil inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the pipe coil outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the pipe coil outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a pipe coil is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the pipe coil outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the pipe coil outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > General Resistances > Pipe Coil >

Return to chapter overview

Result Chart - Pipe Coil

For all phase states a resistance chart is available. This shows the pipe coil friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > General Resistances > Pipe Coil >

Return to chapter overview

Calculation Methods - Pipe Coil

FluidFlow calculates the pressure loss through a pipe coil according to the method outlined in Perry [20] 8th Edition p6-19.

This method modifies the friction factor based on empirical data.


Tube Bundle - Flow through tubes

Tube bundles are used to exchange heat. In this element the fluid is considered to be flowing through the tubes.


Data Entry - Tube Bundle (Flow through tubes)

The data entry requirement for flow through a tube bundle is shown below:

Figure 1: Data Entry for flow through a tube bundle.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Number of Tubes: The total number of tubes in the tube bundle, irrespective of the total number of passes.

Number of Tube Passes: The number of times the fluid passes through the tube bundle. See Heat Exchanger Data Entry for a sketch of this.

Tube Diameter: This is the internal diameter of the exchanger tubes.

Diameter Unit: The unit of length used to define the tube diameter.

Tube Length: The length of the exchanger from tube sheet to tube sheet. See Heat Exchanger Data Entry for a sketch of this.

Length Unit: The unit of length used to define the tube length.

Heat Loss Model: For a tube bundle there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the tube bundle is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the tube bundle. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the tube bundle.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the tube bundle. Into Network means that the temperature of the fluid is increased as the fluid flows through the tube bundle.

Temperature Change: Use this row to specify the temperature change that occurs across the tube bundle. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the tube bundle as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a tube bundle. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the tube bundle as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown below:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table - Tube Bundle (Flow through tubes)

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a tube bundle.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the tube bundle. For all phase states the mass flow into and out of the tube bundle will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the tube bundle. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the tube bundle inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the tube bundle inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a tube bundle is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the tube bundle inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the tube bundle inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the tube bundle outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the tube bundle outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a tube bundle is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the tube bundle outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the tube bundle outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart - Tube Bundle (Flow through tubes)

For all phase states a resistance chart is available. This shows the tube bundle friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods - Tube Bundle (Flow through tubes)

The pressure loss for flow through a tube bundle is composed of 2 contributing parts:

ΔP = Tube Friction Loss + Tube Entrance/Exit Loss

The tube friction loss is calculated assuming a tube roughness of 0.05mm, using the pipe equation calculation methods.

The tube entrance and exit losses are:

For laminar flow: KTubes := 3.25 NTubePasses - 1.5.

For turbulent flow: KTubes := 2.00 NTubePasses - 1.5.

The tube Entrance/Exit Loss is then 0.5 G2 KTubes / ρ.

The variables used in the above equations are described below.

G is the mass flux.

KTubes is the K factor determined as noted above.

ρ is the fluid density.

KTubes is the entrance/exit loss coefficient.


Tube Bundle - Flow around tubes

Tube bundles are used to exchange heat. In this element the fluid is considered to be flowing around the tubes.


Data Entry - Tube Bundle (Flow around tubes)

The data entry requirement for flow around a tube bundle is shown below:

Figure 1: Data Entry for flow around a tube bundle.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Tube Pitch Type: This entry refers to the layout of the tubes in the tube sheet. The value can be either "In-line" or "Staggered". See the sketch in Heat Exchanger Data Entry for further information.

Tube Pitch Distance: This is the distance between the tubes in the tube sheet. See the sketch in Heat Exchanger Data Entry for further information.

Tube Outside Diameter: This is the outside diameter of the tube.

Tube Size Unit: The unit of length used to define the tube pitch and tube outside diameter.

Number of Baffles: The number of baffle plates in the exchanger shell.

Distance between Baffles: The distance between each shell baffle.

Shell Inside Diameter: The inside diameter of the exchanger shell.

Distance/Diameter Unit: The unit of length used to define the shell inside diameter and baffle spacing.

Heat Loss Model: For a tube bundle there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the tube bundle is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the tube bundle. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the tube bundle.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the tube bundle. Into Network means that the temperature of the fluid is increased as the fluid flows around the tube bundle.

Temperature Change: Use this row to specify the temperature change that occurs across the tube bundle. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the tube bundle as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a tube bundle. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the tube bundle as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table - Tube Bundle (Flow around tubes)

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for flow around tube bundle.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing around a tube bundle. For all phase states the mass flow into and out of the tube bundle will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the tube bundle. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the tube bundle inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the tube bundle inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a tube bundle is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the tube bundle inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the tube bundle inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the tube bundle outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the tube bundle outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a tube bundle is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the tube bundle outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the tube bundle outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart - Tube Bundle (Flow around tubes)

For all phase states a resistance chart is available. This shows the around tube bundle friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods - Tube Bundle (Flow around tubes)

The pressure loss around a tube bundle is calculated according to the Delaware method.

ΔP = 0.5 fD G2 (NBaffleCount+1) Dis / (ρ Dh)

The friction factor is determined from regression analysis of the charts provided in Serth [12]

The variables used in the above equations are described below.

G is the mass flux.

ρ is the fluid density.

fD is the friction factor (Darcy).

Dis is the inside shell diameter.

Dh is the hydraulic diameter.

NBaffleCount is the number of baffles.


Constant Head Loss

This element exhibits a constant pressure loss irrespective of the flow. An equipment item that approximates to this behavior is a rotameter, used for flow measurement.

This element can also be used in early design stages of a project where exact equipment has not been sized.


Data Entry

Navigation: Components > General Resistances > Constant Head Loss >

Return to chapter overview

Data Entry - Constant Head Loss

The data entry requirement for a constant head loss element is shown below:

Figure 1: Data Entry for a constant head loss element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Pressure Loss (Constant): Enter the value of pressure loss that you wish to drop across this element. This will be a constant value irrespective of flow.

Pressure Loss Unit: The unit of pressure loss used to define the specified pressure loss.

Heat Loss Model: For a constant head loss there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the constant head loss is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the constant head loss. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the constant head loss.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the constant head loss. Into Network means that the temperature of the fluid is increased as the fluid flows through the constant head loss.

Temperature Change: Use this row to specify the temperature change that occurs across the constant head loss. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the constant head loss as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a constant head loss. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the constant head loss as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > General Resistances > Constant Head Loss >

Return to chapter overview

Result Table - Constant Head Loss

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a constant head loss of 1000 Pa.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the constant head loss. For all phase states the mass flow into and out of the constant head loss will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the constant head loss. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the constant head loss inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the constant head loss inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a constant head loss is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the constant head loss inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the constant head loss inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the constant head loss outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the constant head loss outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a constant head loss is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the constant head loss outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the constant head loss outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > General Resistances > Constant Head Loss >

Return to chapter overview

Result Chart - Constant Head Loss

There are no result charts because pressure loss is not a function of flow.


Calculation Methods

Navigation: Components > General Resistances > Constant Head Loss >

Return to chapter overview

Calculation Methods - Constant Head Loss

The pressure loss across a constant head loss element is always constant and equal to the value set in the Input Editor, irrespective of flow.


User Defined Generic

For resistive elements that do not fit into any of the existing categories it is possible to use a User Defined element.

To use this element you will need to have some flow against pressure loss data.


Data Entry

Navigation: Components > General Resistances > User Defined Generic >

Return to chapter overview

Data Entry - User Defined Generic

The data entry requirement for user defined element is shown below:

Figure 1: Data Entry for a user defined element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For resistances there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Defining Equation: This is the defining equation you wish to use. The default equation is:

ΔP = K + A B Qn + C D Qm where K, A, B, C and D are constants (fixed values) or an inlet property (either density, viscosity or pressure).

By setting the values of K, A, B, C and D you can build up a simple or complex equation. For example, to simulate a constant pressure loss, all we need to do is set the K value to the constant pressure loss value and then set A or B and C or D to zero. Setting A and C to zero will effectively remove the second and third terms from the equation. The terms left are ΔP = K, i.e., a constant pressure loss.

Another option is to use Single Point Flow vs. dp Data as your Defining Equation. In this instance, you will need to provide Flow, Pressure Loss, Reference Density, and Exponent values.

Finally, you can also provide your own equation using the GetPressureLoss Script option, which will display a Script dialog allowing you to write your own calculation code to return a Pressure Loss value.

Flow Unit: The flow unit for the volumetric flow term, Q, used in the Defining Equation.

Pressure Loss Unit: The pressure loss unit for the pressure loss term, ΔP, used in the Defining Equation.

K Term Type: This defines the type of entry you will make for the K term in the defining equation. The available types are: "Fixed Value"; "Inlet Density"; "Inlet Viscosity" or "Inlet Pressure". Selecting "Fixed Value" allows you to enter a constant for the K term. (see A, B and C terms for further explanation).

K Value: Enter the constant value or the units of measurement depending on the K term type you have selected. in Figure 1 above a "Fixed Value" term type has been selected and the value entered is 0. In effect this removes the first term from the total equation. Using all of the settings shown in Figure 1 the pressure loss equation will be ΔP = P1 μ1 Q2 + ρ1Q3

A Term Type: This defines the type of entry you will make for the A term in the defining equation. The available types are: "Fixed Value"; "Inlet Density"; "Inlet Viscosity" or "Inlet Pressure". Selecting "Inlet Pressure" allows you to use P1 in the defining equation. (see K, B and C terms for further explanation).

A Pressure Unit: The unit of pressure that defines the A term. For example, using all of the settings shown in Figure 1 the pressure loss equation will be ΔP = P1 μ1 Q2 + ρ1Q3 where P1 is in bar a.

B Term Type: This defines the type of entry you will make for the B term in the defining equation. The available types are: "Fixed Value"; "Inlet Density"; "Inlet Viscosity" or "Inlet Pressure". Selecting "Inlet Viscosity" allows you to use μ1 in the defining equation. (see K, A and C terms for further explanation).

B Viscosity Unit: The unit of viscosity that defines the B term. For example, using all of the settings shown in Figure 1 the pressure loss equation will be ΔP = P1 μ1 Q2 + ρ1Q3 where μ1 is in cP.

C Term Type: This defines the type of entry you will make for the C term in the defining equation. The available types are: "Fixed Value"; "Inlet Density"; "Inlet Viscosity" or "Inlet Pressure". Selecting "Inlet Density" allows you to use ρ1 in the defining equation. (see K, A and B terms for further explanation).

C Density Unit: The unit of density that defines the C term. For example, using all of the settings shown in Figure 1 the pressure loss equation will be ΔP = P1 μ1 Q2 + ρ1Q3 where ρ1 is in kg/m3.

Exponent n: This is the exponent to be used in the first term in the defining equation. i.e Flowrate to the power of n.

Exponent m: This is the exponent to be used in the second term in the defining equation. i.e Flowrate to the power of m.

Heat Loss Model: For a user defined there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the user defined is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the user defined. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the user defined.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 3: Additional input data required for Heat Loss Model set to Fixed Temperature Change

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the user defined. Into Network means that the temperature of the fluid is increased as the fluid flows through the user defined.

Temperature Change: Use this row to specify the temperature change that occurs across the user defined. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the user defined as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 4

Figure 4: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a user defined. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the user defined as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 5:

Pipes Input Editor10

Figure 5: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > General Resistances > User Defined Generic >

Return to chapter overview

Result Table - User Defined Generic

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a user defined element.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the user defined. For all phase states the mass flow into and out of the user defined will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the user defined. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the user defined inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the user defined inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a user defined is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the user defined inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the user defined inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the user defined outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the user defined outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a user defined is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the user defined outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the user defined outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as:

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > General Resistances > User Defined Generic >

Return to chapter overview

Result Chart - User Defined Generic

For all phase states a resistance chart is available. This shows the user defined friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > General Resistances > User Defined Generic >

Return to chapter overview

Calculation Methods - User Defined Generic

The general 3 term equation relating pressure loss to flow is defined as

ΔP = K + A B Qn + C D Qm where K, A, B, C, D, n and m are constants (fixed values) or an inlet property (either density, viscosity or pressure) and Q is the flowrate.

By setting the K, A, B, C and D terms there are many loss equations possible.

For example a simple fitting may have a pressure loss that is proportional to flow squared. To achieve this equation all we need to do is set the K term and either the C or D term to zero. This will reduce the equation to

ΔP = A B Qn , so if we set A = 1, B equal to the constant of proportionality and n to 2 we arrive at the equation we want.


Flame Arrester Example

FluidFlow allows users to model Non-Standard pipe or duct fittings using the "User Defined Generic" node user defined which is available from the "General Resistances" tab on the component palette.

This node tends to be more accurate than the Kv node as when using this node we need to define the manufacturer's curve relationship for the fitting. The Kv node by comparison, only requires a single point on the curve. FluidFlow then scales up or down accordingly based on the actual system flow rate.

This section will demonstrate how to develop the full curve relationship for a flame arrester using the User Defined Generic node and model the pressure loss relationship in a network. Details of the flame arrester pressure loss are set out in Figure 1.

Figure 1: Flame Arrester Model DN 150 / 6".

The first step is to define a number of coordinates from the relevant curve (Flame Arrester Model DN 150 / 6") into a table in MS Excel. From this table, create a graph plot of the curve (Insert | Scatter | Scatter with only markers). Right mouse-click on the coordinates and select Add Trendline. A new dialog will appear titled Format Trendline. Click through each of the trendline/curve-fit options taking care to select the curve which best reflects the coordinate positions. Place a check mark in the option for Display the Equation on the chart. Finally, select OK.

It is important that the user gives careful consideration to selecting the appropriate curve fit in Excel, in this case, the Power Law curve fit has been selected. Figure 2 provides details of this data entry.

Figure 2: Excel Graph Plot for Flame Arrester Model DN 150 / 6".

flame arrester excel sheet

The variables derived from the excel equation are those which may now be defined in FluidFlow (see Figure 3). Note, ensure the flow and pressure loss units are set to m3/h and mbar as per the manufacturer's curve data.

Figure 3: Data Entry for User Defined Generic Node.

flame arrester generic user defined

Now the User Defined node has been fully defined, we can build a few sample models using different flow rates to test the accuracy. Figure 4 provides details of the test models. We can see that the calculated friction loss values compare well with those set out in the manufacturer's datasheet illustrated in Figure 1.

Figure 4: Test Models using different design flow rates.

flame arrester test models

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Pressure Reduction Ratio Valve

Navigation: Components > General Resistances > User Defined Generic >

Return to chapter overview

Pressure Reduction Ratio Valves

Pressure reduction ratio valves can also be modeled by using the "User Defined Generic" node user defined. The following example shows such a design case.

It is intended to model a ratio pressure reducing valve in a water flow system at "Point B". The flow system has an inlet boundary pressure of 5 bar g and the valve ratio is 4:1.

Note, it is important to set the relevant flow and pressure units for the valve and set the K Term and B Term Type to "Inlet Pressure". The exponent n and m can be left as 0. Figure 1 shows the data-entry for the valve.

Pressure Ratio Valve Data Entry

Figure 1: Data Entry for Pressure Reduction Ratio Valve (bar a reference pressure).

The data-entry shown in Figure 1 is based on "bar a" (absolute) reference pressure at the valve inlet.

The valve was modeled in the system shown in Figure 2.

Pressure Ratio Valve Model

Figure 2: Modelling Pressure Reduction Ratio Valve (bar a reference pressure).

The pressure at the inlet of the ratio pressure reducing valve is calculated to be 5.98 bar a (absolute) and since the reduction ratio is 4:1, the outlet pressure must be 1.495 bar a (5.98 / 4 = 1.495 bar a). We can see in Figure 2 this is the condition which has been solved based on the data-entry shown in Figure 1.

If the pressure reference for the valve was "bar g", the data entry would appear as shown in Figure 3.

Pressure Ratio Valve Data Entry2

Figure 3: Data Entry for Pressure Reduction Ratio Valve (bar g reference pressure).

When we solve the valve using the conditions described in Figure 3, the inlet pressure in bar g units is taken into account, i.e., 4.963 bar g. The resultant pressure at the outlet of the valve is therefore, 4.963 * 0.25 = 1.241 bar g.

Pressure Ratio Valve Model2

Figure 4: Modelling Pressure Reduction Ratio Valve (bar g reference pressure).


Size Change

Size change elements bring about a sudden change in velocity at the element. This can be caused by a change in the size of inlet and outlet pipes or by a sudden constriction.


Thin Orifice

Thin orifice plates are often used as measuring devices. There is a design/calculation standard ISO 5167 associated with the pressure loss over this type of element.

Thin orifice plates are also used to reduce the pressure in a flowing system and for flow balancing.

You should be aware that there are 2 types of pressure loss associated with this type of element. The pressure loss referred to in the calculation standard is associated with a measuring device and occurs at a specific location (for example a pipe diameter upstream and downstream of the orifice plate or at flange tap points).

From a flow system viewpoint the velocity usually decelerates after the measuring/tap location and the velocity/kinetic energy is converted back to static pressure. In flow systems we are also interested in the overall pressure loss (including pressure recovery) and FluidFlow shows pressure loss results for both of these purposes.


Data Entry

Navigation: Components > Size Change > Thin Orifice >

Return to chapter overview

Data Entry - Thin Orifice

The data entry requirement for a thin orifice element is shown below:

Figure 1: Data Entry for a thin orifice element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For thin orifice plates there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

It should be noted that if Ignore Pressure Loss has been selected, the stagnation and static pressures at the element inlet and outlet will be identical. However, as we have a restriction in the line, the velocity will increase across the element which will result in an increase in the associated velocity pressure. Since the stagnation pressure across the element will be constant, if the fluid velocity and velocity pressure increases considerably, the static pressure across the element may be negative (conservation of energy laws). Users may wish to review the design and data entry in further detail if this scenario arises.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the Elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size orifice plates using two sizing models as described below.

Sizing Model: Users can choose from two sizing models for thin orifice plates: 1) Size for Flow & 2) Size for Pressure Loss. If you select Size for Flow, additional data entry is required as per Figure 2.

PumpInput Auto Size

Figure 2: Automatically sizing a thin orifice plate based on design flow rate.

Design Flow: This is the design flow requirement for the system. You can enter either a volumetric or mass flow rate. Note, it is important we don't duplicate the flow in the system when selecting this option. For instance, we cannot set an orifice plate to Size for Flow and model in series with: 1) a Known Flow boundary node, 2) a Flow Control device, 3) an Inline Nozzle, Venturi Tube or centrifugal pump which are also set to Size for Flow.

Flow Unit: This is the unit of flow used when defining the flow rate for the orifice plate.

If you select Size for Pressure Loss, additional data entry is required as per Figure 3.

Figure 3: Automatically sizing a thin orifice plate based on design pressure loss.

Design Pressure Change: This is the design pressure rise requirement for the orifice plate. Note, design pressure rise refers to the stagnation pressure rise.

Pressure Change Unit: This is the pressure (or head) unit that you use when defining the design orifice plate pressure loss.

Orifice Size: This is the size of the circular hole in the orifice plate.

Orifice Unit: The unit of length that defines the orifice size that you have entered into the orifice size row.

Orifice Equation: The calculation method that FluidFlow will use to predict the pressure loss across the orifice plate. The only available method is ISO 5167.

Heat Loss Model: For a thin orifice there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the thin orifice is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the thin orifice. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the thin orifice.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 4 below:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the thin orifice. Into Network means that the temperature of the fluid is increased as the fluid flows through the thin orifice.

Temperature Change: Use this row to specify the temperature change that occurs across the thin orifice. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the thin orifice as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 5.

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a thin orifice. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the thin orifice as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Size Change > Thin Orifice >

Return to chapter overview

Result Table - Thin Orifice

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows a selection of the available results for a liquid phase state. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Thin Orifice Plate.

Only descriptions for the relevant results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Size: This is the calculated orifice size required to meet the design conditions as defined in the model when using the automatically size option.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Corner Tap Loss: The pressure loss between the upstream and downstream corner pressure tappings. Corner pressure tappings are small circular holes drilled in the pipe wall which are used for the connection of pressure-sensitive elements for the measurement of static pressures. Corner Taps are defined by the corner formed between the orifice plate and the internal diameter of the flange.

D and D/2 Tap Loss: The pressure loss between the upstream and downstream pressure tappings. The position of the upstream pressure tapping is nominally equal to D and the position of the downstream pressure tapping is nominally equal to D/2 where, D is the inside diameter of the pipe.

Flange Tap Loss: The pressure loss between the upstream and downstream flange pressure tappings. The position of the upstream and downstream pressure tapping is nominally 25.4 mm (1 inch) from the upstream and downstream face of the orifice plate respectively.

Flow: This is the flow through the thin orifice plate that FluidFlow has calculated.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element.

Friction Loss: This is the calculated total pressure loss due to friction.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo-physical property and depends on temperature and pressure.

In Stagnation Pressure: The stagnation pressure at the orifice plate inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the orifice plate inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at a point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any orifice plate is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the orifice plate inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the orifice plate inlet. For liquids and gases, velocity increases as the fluid moves across the orifice plate. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software using the equation:

K = 2 ΔP/ρv2

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a mach number greater than 1 within this element. The velocity of sound is a thermo-physical property and depends on temperature and pressure.

Out Stagnation Pressure: The stagnation pressure at the orifice plate outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the orifice plate outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an orifice plate is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the orifice plate outlet. For liquids and gases, velocity increases as the fluid flows across the orifice plate. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Stagnation Pressure Loss: This is the difference between the stagnation pressure at the inlet and outlet of the orifice plate.

Static Pressure Loss: This is the difference between the static pressure at the inlet and outlet of the orifice plate. This will differ to the corner tap loss, flange tap loss, etc., as it also takes into account pressure recovery which may occur across the orifice plate.

Vena Contracta Mach#: This is the ratio of the fluid velocity at the orifice plate to the local velocity of sound.

Vena Contracta Velocity: The velocity level which occurs at the point of maximum convergence (minimum cross-sectional area) of the flowstream. The vena contracta normally occurs just downstream of the actual physical restriction in an orifice plate.


Result Chart

Navigation: Components > Size Change > Thin Orifice >

Return to chapter overview

Result Chart - Thin Orifice

For all phase states a resistance chart is available. This shows the orifice friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Size Change > Thin Orifice >

Return to chapter overview

Calculation Methods - Thin Orifice

See ISO 5167 for detailed information.

The total pressure loss is:

ΔP = Pressure Loss at the corner tap points multiplied by [(1 - β4)0.5 - C1β2] / [(1 - β4)0.5 + C1β2].

where:

β is the orifice diameter "beta" ratio (β = d/D where "d" is the orifice bore diameter and "D" is the internal pipe diameter). As a reference guide, a beta ratio of 0.45 indicates that the orifice bore diameter is 45% of the pipe inside diameter. Guidelines on design beta ratios are available in ISO 5167 & Perry's Chemical Engineering Handbook. Published literature makes reference to keeping the design beta ratio to within the range of 0.15 to 0.68 to develop the best performance from the orifice plate. If a thin orifice plate is solved in FluidFlow and the calculated beta ratio is outside of this range, a warning message is enunciated to prompt the designer into reviewing the design conditions. Beta ratios outside of this range are noted to introduce flow system errors and other potential flow problems.

When sizing orifice plates, ensure the right pressure drop range, maximum flow and optimum beta ratio for best performance of the orifice plate. Note, beta ratio and pressure drop for an orifice plate are related and as such, altering one affects the other.

C1 is the orifice plate discharge coefficient derived from equation 5.3.2.1 in ISO 5167.


Auto-Sizing a Thin Orifice

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including thin orifice plates.

This series of examples demonstrates how a thin orifice can be automatically sized using either a design flow rate or design pressure loss. To begin, a standard 20mm thin orifice plate has been modeled in a 10.0 M long 2 inch Schedule 40 steel pipeline. This allows us to establish the flow rate and pressure loss for this size of element in this system. We can then benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the 20mm orifice plate and Figure 2 gives an overview of the performance of this device in this system.

thin orifice auto size image 4

Figure 1: Data entry for 20mm Thin Orifice (Auto Size function set to Off).

thin orifice auto size image 1

Figure 2: 20mm Thin Orifice Model (Auto Size function set to Off).

We can see in Figure 2 that the mass flow rate in the system has been calculated as 1.6371 kg/s based on an orifice size of 20mm.

Auto-Sizing based on Design Flow Rate.

Set the Automatically Size field for the orifice plate to "On", set the Sizing Model to Size for Flow and enter the design flow rate of 1.6371 kg/s for the orifice plate (flow rate calculated in Figure 2). Note, the field titled Orifice Size has now been removed from the Input Editor as FluidFlow will now automatically calculate the size required based on the design flow condition entered by the user.

The Input Editor for the thin orifice should now appear as shown in Figure 3.

thin orifice auto size image 3 size for flow

Figure 3: Data entry for Auto-Sizing a Thin Orifice (Sized based on design flow rate established in Figure 2).

Figure 4 shows the calculated results for the orifice plate. As we can see, FluidFlow has established a required orifice size of 20mm based on the design flow rate of 1.6371 kg/s, i.e., matching Figure 2.

thin orifice auto size image 2 size for flow

Figure 4: Auto-Sizing a Thin Orifice (Sized based on design flow rate established in Figure 2).

Auto-Sizing based on Design Pressure Loss.

Set the Automatically Size field for the orifice plate to "On", set the Sizing Model to Size for Pressure Loss and enter the design pressure loss of 29040.2 Pa for the orifice plate (pressure loss calculated in Figure 2).

The Input Editor for the thin orifice should now appear as shown in Figure 5.

thin orifice auto size design pressure loss data entry

Figure 5: Data entry for Auto-Sizing a Thin Orifice (Sized based on design pressure loss established in Figure 2).

Figure 6 shows the calculated results for the orifice plate based on a design pressure loss of 29040.2 Pa across the element. As we can see, FluidFlow has established a required orifice size of 20mm, matching the results as shown in Figure 2. The element has therefore been automatically sized successfully.

thin orifice auto size design pressure loss model

Figure 6: Auto-Sizing a Thin Orifice (Sized based on design pressure loss established in Figure 2).

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Thick Orifice

Thick orifice plates are used for measuring the volumetric flow rate of a fluid and may also be used to reduce the pressure in a flowing system and for flow balancing. They use the same principle as the Bernoulli's principle which states that there is a relationship between the pressure of the fluid and the velocity of the fluid. When the velocity increases, the pressure decreases and vice versa.

When the fluid reaches the orifice plate, the fluid is forced to converge through the small opening in the middle. The point of maximum convergence occurs just downstream of the physical orifice. As it does so, the velocity and the pressure changes. Beyond the opening, the fluid expands and the velocity and pressure change once again. By measuring the difference in fluid pressure between the normal pipe section and at the opening, the volumetric and mass flow rates can be obtained using Bernoulli's equation.

The calculation standard detailing the pressure loss over thick orifice plates is found in Pipe Flow - A Practical & Comprehensive Guide - AIChE [24].


Data Entry

Navigation: Components > Size Change > Thick Orifice >

Return to chapter overview

Data Entry - Thick Orifice

The data entry requirement for a Thick Orifice element is shown below:

Figure 1: Data Entry for a Thick Orifice Plate.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For thick orifice plates there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

It should be noted that if Ignore Pressure Loss has been selected, the stagnation and static pressures at the element inlet and outlet will be identical. However, as we have a restriction in the line, the velocity will increase across the element which will result in an increase in the associated velocity pressure. Since the stagnation pressure across the element will be constant, if the fluid velocity and velocity pressure increases considerably, the static pressure across the element may be negative (conservation of energy laws). Users may wish to review the design and data entry in further detail if this scenario arises.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the Elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size orifice plates using two sizing models as described below.

Sizing Model: Users can choose from two sizing models for thick orifice plates: 1) Size for Flow & 2) Size for Pressure Loss. If you select Size for Flow, additional data entry is required as per Figure 2.

PumpInput Auto Size

Figure 2: Automatically sizing a thick orifice plate based on design flow rate.

Design Flow: This is the design flow requirement for the system. You can enter either a volumetric or mass flow rate.

Flow Unit: This is the unit of flow used when defining the flow rate for the orifice plate.

If you select Size for Pressure Loss, additional data entry is required as per Figure 3.

Figure 3: Automatically sizing a thick orifice plate based on design pressure loss.

Design Pressure Change: This is the design pressure rise requirement for the orifice plate. Note, design pressure rise refers to the stagnation pressure rise.

Pressure Change Unit: This is the pressure (or head) unit that you use when defining the design orifice plate pressure loss.

Orifice Size: This is the size of the constricting circular hole in the orifice plate.

Plate Thickness: This is the actual thickness of the orifice plate.

Size Unit: The unit of length that defines the thickness of the plate that you have entered into the Plate Thickness row.

Heat Loss Model: For a thick orifice plate there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the orifice plate is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the orifice plate. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 4 below:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the orifice plate. Into Network means that the temperature of the fluid is increased as the fluid flows through the orifice plate.

Temperature Change: Use this row to specify the temperature change that occurs across the orifice plate. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the orifice plate as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 5.

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) the orifice plate. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the orifice plate as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Size Change > Thick Orifice >

Return to chapter overview

Result Table - Thick Orifice

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows a selection of the available results for a liquid phase state. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Thick Orifice Plate.

Only descriptions for the relevant results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Size: This is the calculated orifice size required to meet the design conditions as defined in the model when using the automatically size option.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the thick orifice plate that FluidFlow has calculated.

Friction Loss: This is the calculated total pressure loss due to friction.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software using the equation:

K = 2 ΔP/ρv2

This Pressure Loss Coefficient K value is not to be confused with the loss coefficient (Ko) as described in Thick Orifice | Calculation Methods.

In Stagnation Pressure: The stagnation pressure at the orifice plate inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the orifice plate inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any orifice plate is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the orifice plate inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the orifice plate inlet. For liquids and gases, velocity increases as the fluid moves across the orifice plate. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the orifice plate outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an orifice plate is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Stag. Temperature: This is the stagnation temperature at the orifice plate outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the orifice plate outlet. For liquids and gases, velocity increases as the fluid flows across the orifice plate. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Stagnation Pressure Loss: This is the difference between the stagnation pressure at the inlet and outlet of the orifice plate.

Static Pressure Loss: This is the difference between the static pressure at the inlet and outlet of the orifice plate. This result takes into account pressure recovery which may occur across the orifice plate.


Result Chart

Navigation: Components > Size Change > Thick Orifice >

Return to chapter overview

Result Chart - Thick Orifice

For all phase states a resistance chart is available. This shows the orifice friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Size Change > Thick Orifice >

Return to chapter overview

Calculation Methods - Thick Orifice

The calculation method used is based on the correlations and charts found in Pipe Flow - A Practical & Comprehensive Guide - AIChE [24], p 146.

The terms used in the equations below are set out illustrated in Figure 1.

Thick Orifice Plate

Figure 1: Thick Orifice Plate.

The loss coefficient for a thick orifice is determined from the following set of equations:

Equation 1: where the orifice thickness to diameter ratio t/do ≤ 1.4.

Ko = 0.0696 (1 - β5) λ2 + C (λ - β2)2 + (1 - C)[(λ - 1)2 + (1 + β2)2].

Equation 2: where the orifice thickness to diameter ratio t/do > 1.4.

Ko = 0.0696 (1 - β5) λ2 + (λ - 1)2 + (1 - β2)2 + fo(t/do - 1.4).

where:

λ = 1 + 0.622 (1 - 0.215β2 - 0.785β5).

C = [1 - 0.50(t/1.4do)2.5 - 0.50 (t/1.4do)3]4.5.

where:

β is the orifice diameter "beta" ratio (β = d/D where "d" is the orifice bore diameter and "D" is the internal pipe diameter). As a reference guide, a beta ratio of 0.45 indicates that the orifice bore diameter is 45% of the pipe inside diameter. Guidelines on design beta ratios are available in ISO 5167 & Perry's Chemical Engineering Handbook. Published literature makes reference to keeping the design beta ratio to within the range of 0.15 to 0.68 to develop the best performance from the orifice plate. If a thick orifice plate is solved in FluidFlow and the calculated beta ratio is outside of this range, a warning message is enunciated to prompt the designer into reviewing the design conditions. Beta ratios outside of this range are noted to introduce flow system errors and other potential flow problems.

When sizing orifice plates, ensure the right pressure drop range, maximum flow and optimum beta ratio for best performance of the orifice plate. Note, beta ratio and pressure drop for an orifice plate are related and as such, altering one affects the other.

λ is the jet contraction coefficient.

fo is the friction factor of the cylindrical surface of the orifice.


Auto-Sizing a Thick Orifice

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including thick orifice plates.

This series of examples demonstrates how a thick orifice can be automatically sized using either a design flow rate or design pressure loss. To begin, a standard 10mm thick orifice plate has been modeled in a 10.0 M long 2 inch Schedule 40 steel pipeline. This allows us to establish the flow rate and pressure loss for this size of element in this system. We can then benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the 10mm orifice plate (5 mm plate thickness) and Figure 2 gives an overview of the performance of this device in this system.

ThickOrifice Auto Size Fig 1

Figure 1: Data entry for 10mm Thick Orifice (Auto Size function set to Off).

ThickOrifice Auto Size Fig 2

Figure 2: 10mm Thick Orifice Model (Auto Size function set to Off).

We can see in Figure 2 that the mass flow rate in the system has been calculated as 0.510552 kg/s based on an orifice size of 10mm.

Auto-Sizing based on Design Flow Rate.

Set the Automatically Size field for the orifice plate to "On", set the Sizing Model to Size for Flow and enter the design flow rate of 0.510552 kg/s for the orifice plate (flow rate calculated in Figure 2). Note, the field titled Orifice Size has now been removed from the Input Editor as FluidFlow will now automatically calculate the size required based on the design flow condition entered by the user.

The Input Editor for the thick orifice should now appear as shown in Figure 3.

ThickOrifice Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a Thick Orifice (Sized based on design flow rate established in Figure 2).

Figure 4 shows the calculated results for the orifice plate. As we can see, FluidFlow has established a required orifice size of 10mm based on the design flow rate of 0.510552 kg/s, i.e., matching Figure 2.

ThickOrifice Auto Size Fig 4

Figure 4: Auto-Sizing a Thick Orifice (Sized based on design flow rate established in Figure 2).

Auto-Sizing based on Design Pressure Loss.

Set the Automatically Size field for the orifice plate to "On", set the Sizing Model to Size for Pressure Loss and enter the design pressure loss of 50495.69 Pa for the orifice plate (pressure loss calculated in Figure 2).

The Input Editor for the thick orifice should now appear as shown in Figure 5.

ThickOrifice Auto Size Fig 5

Figure 5: Data entry for Auto-Sizing a Thick Orifice (Sized based on design pressure loss established in Figure 2).

Figure 6 shows the calculated results for the orifice plate based on a design pressure loss of 50495.69 Pa across the element. As we can see, FluidFlow has established a required orifice size of 10mm, matching the results as shown in Figure 2. The element has therefore been automatically sized successfully.

ThickOrifice Auto Size Fig 6

Figure 6: Auto-Sizing a Thick Orifice (Sized based on design pressure loss established in Figure 2).

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Inline Nozzle

Inline Nozzles are mainly used to control the direction or characteristics of a fluid flow (especially to increase velocity) as it exits (or enters) an enclosed chamber or pipe via an orifice.

A nozzle is often a pipe or tube of varying cross sectional area, and it can be used to direct or modify the flow of a fluid (liquid or gas). Nozzles are frequently used to control the rate of flow, speed, direction, mass, shape, and/or the pressure of the stream that emerges from them.


Data Entry

Navigation: Components > Size Change > Inline Nozzle >

Return to chapter overview

Data Entry - Inline Nozzle

The data entry requirement for an Inline Nozzle element is shown in Figure 1 below:

Figure 1: Data Entry for an Inline Nozzle.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For inline nozzles there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

It should be noted that if Ignore Pressure Loss has been selected, the stagnation and static pressures at the element inlet and outlet will be identical. However, as we have a restriction in the line, the velocity will increase across the element which will result in an increase in the associated velocity pressure. Since the stagnation pressure across the element will be constant, if the fluid velocity and velocity pressure increases considerably, the static pressure across the element may be negative (conservation of energy laws). Users may wish to review the design and data entry in further detail if this scenario arises.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the Elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size inline nozzles using two sizing models as described below.

Sizing Model: Users can choose from two sizing models for inline nozzles: 1) Size for Flow & 2) Size for Pressure Loss. If you select Size for Flow, additional data entry is required as per Figure 2.

PumpInput Auto Size

Figure 2: Automatically sizing an inline nozzle based on design flow rate.

Design Flow: This is the design flow requirement for the system. You can enter either a volumetric or mass flow rate.

Flow Unit: This is the unit of flow used when defining the flow rate for the inline nozzle.

If you select Size for Pressure Loss, additional data entry is required as per Figure 3.

Figure 3: Automatically sizing an inline nozzle based on design pressure loss.

Design Pressure Change: This is the design pressure rise requirement for the inline nozzle.

Pressure Change Unit: This is the pressure (or head) unit that you use when defining the design pressure loss for an inline nozzle.

Throat Diameter: This is the size of the restrictive circular opening in the nozzle.

Diameter Unit: The unit of length that defines the restrictive opening that you have entered into the Throat Diameter row.

Nozzle Equation: There are two pressure loss calculation options available in FluidFlow, the method as set out in ISO 5157 and the "Long Radius Model".

Heat Loss Model: For an Inline Nozzle there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the nozzle is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the nozzle. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the nozzle.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 4 below:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the nozzle. Into Network means that the temperature of the fluid is increased as the fluid flows through the nozzle.

Temperature Change: Use this row to specify the temperature change that occurs across the nozzle. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the nozzle as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 5.

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the nozzle. Into Network means that the temperature of the fluid is increased as the fluid flows through the nozzle.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a nozzle. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the nozzle as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Size Change > Inline Nozzle >

Return to chapter overview

Result Table - Inline Nozzle

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows a selection of the available results for a liquid phase state. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for an Inline Nozzle.

Only descriptions for the relevant results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Size: This is the calculated inline nozzle size required to meet the design conditions as defined in the model when using the automatically size option.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the nozzle that FluidFlow has calculated.

In Stagnation Pressure: The stagnation pressure at the nozzle inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the nozzle inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any nozzle is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the nozzle inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the nozzle inlet. For gases, velocity increases as the fluid moves across the nozzle. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software using the equation:

K = 2 ΔP/ρv2

Out Stagnation Pressure: The stagnation pressure at the nozzle outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the nozzle outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a nozzle is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the nozzle outlet. For gases, velocity increases as the fluid flows across the nozzle. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as:

DP = (z1r1g + p1 + 0.5r1v12) - (z2r2g + p2 + 0.5r2v22)


Result Chart

Navigation: Components > Size Change > Inline Nozzle >

Return to chapter overview

Result Chart - Inline Nozzle

For all phase states a resistance chart is available. This shows the nozzle friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state; the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Size Change > Inline Nozzle >

Return to chapter overview

Calculation Methods - Inline Nozzle

The user can choose from two pressure loss models in FluidFlow, the method as set out in ISO 5167-3 and the "Long Radius Model".

The pressure loss is determined from the following equation:

ΔP = Δw [(1 - β4)0.5 - C1β2] / [(1 - β4)0.5 + C1β2].

where:

β is the nozzle diameter "beta" ratio (β = d/D where "d" is the nozzle bore diameter and "D" is the upstream internal pipe diameter). As a reference guide, a beta ratio of 0.45 indicates that the nozzle bore diameter is 45% of the pipe inside diameter. Guidelines on design beta ratios are available in ISO 5167 & Perry's Chemical Engineering Handbook. Published literature makes reference to keeping the design beta ratio to within the range of 0.15 to 0.68 to develop the best performance from the nozzle. If an inline nozzle is solved in FluidFlow and the calculated beta ratio is outside of this range, a warning message is enunciated to prompt the designer into reviewing the design conditions. Beta ratios outside of this range are noted to introduce flow system errors and other potential flow problems.

When sizing inline nozzles, ensure the right pressure drop range, maximum flow and optimum beta ratio for best performance of the nozzle. Note, beta ratio and pressure drop for an inline nozzle are related and as such, altering one affects the other.

Δw is the differential pressure.

C1 is the discharge coefficient.

The actual mass flow rate through the nozzle is diminished from the theoretical value by the existence of a fluid boundary layer. Therefore, a "discharge coefficient" (C1) is applied to the theoretical value required to obtain the actual flow rate.

The discharge coefficient (C1) for ISA 1932 nozzles is determined from the following equation:

C1 = 0.99 - 0.2262 β4.1 - (0.00175 β2 - 0.0033 β4.15) (106/Re)1.15.

For long radius nozzles, the discharge coefficient (C1) is determined from the following equation:

C1 = 0.9965 - 0.006653 * β0.5 * (106/Re)0.5.

FluidFlow automatically calculates the losses at corner tap points and the gas expansibility correction factor as part of the solution routines.


Auto-Sizing an Inline Nozzle

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including inline nozzles.

This series of examples demonstrates how inline nozzles can be automatically sized using either a design flow rate or design pressure loss. To begin, a standard inline nozzle with a throat diameter of 10mm has been modeled in a 10.0 M long 2 inch Schedule 40 steel pipeline. This allows us to establish the flow rate and pressure loss for this size of element in this system. We can then benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the nozzle and Figure 2 gives an overview of the performance of this device in this system.

InlineNozzle Auto Size Fig 1

Figure 1: Data entry for Inline Nozzle (Auto Size function set to Off).

InlineNozzle Auto Size Fig 2

Figure 2: 10mm Inline Nozzle Model (Auto Size function set to Off).

We can see in Figure 2 that the mass flow rate in the system has been calculated as 0.72228 kg/s based on a nozzle throat diameter of 10mm.

Auto-Sizing based on Design Flow Rate.

Set the Automatically Size field for the nozzle to "On", set the Sizing Model to Size for Flow and enter the design flow rate of 0.72228 kg/s for the nozzle (flow rate calculated in Figure 2). Note, the field titled Throat Diameter has now been removed from the Input Editor as FluidFlow will now automatically calculate the size required based on the design flow condition entered by the user.

The Input Editor for the nozzle should now appear as shown in Figure 3.

InlineNozzle Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing an Inline Nozzle (Sized based on design flow rate established in Figure 2).

Figure 4 shows the calculated results for the nozzle. As we can see, FluidFlow has established a required throat diameter of 10mm based on the design flow rate of 0.72228 kg/s, i.e., matching Figure 2.

InlineNozzle Auto Size Fig 4

Figure 4: Auto-Sizing an Inline Nozzle (Sized based on design flow rate established in Figure 2).

Auto-Sizing based on Design Pressure Loss.

Set the Automatically Size field for the nozzle to "On", set the Sizing Model to Size for Pressure Loss and enter the design pressure loss of 50353.98 Pa for the nozzle (pressure loss calculated in Figure 2).

The Input Editor for the nozzle should now appear as shown in Figure 5.

InlineNozzle Auto Size Fig 5

Figure 5: Data entry for Auto-Sizing an Inline Nozzle (Sized based on design pressure loss established in Figure 2).

Figure 6 shows the calculated results for the nozzle based on a design pressure loss of 50353.98 Pa across the element. As we can see, FluidFlow has established a required throat diameter of 10mm, matching the results as shown in Figure 2. The element has therefore been automatically sized successfully.

InlineNozzle Auto Size Fig 6

Figure 6: Auto-Sizing an Inline Nozzle (Sized based on design pressure loss established in Figure 2).

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Venturi tube

A venturi tube is a tube or pipe which employs a temporary restriction or narrowing in its length to reduce the pressure and increase the velocity of a fluid or gas passing through it. This phenomenon of simultaneous pressure reduction and velocity increase is known as the venturi effect and has a number of uses such the measurement of fluid flow.

There are several types of venturi tube profiles in general use with a gradual change in profile being the most effective.

The calculation standard detailing the pressure loss over a venturi tube is found in Pipe Flow - A Practical & Comprehensive Guide - AIChE [24].


Data Entry

Navigation: Components > Size Change > Venturi tube >

Return to chapter overview

Data Entry - Venturi tube

The data entry requirement for a Venturi Tube element is shown in Figure 1 below:

Figure 1: Data Entry for a Venturi Tube element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For venturi tubes there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

It should be noted that if Ignore Pressure Loss has been selected, the stagnation and static pressures at the element inlet and outlet will be identical. However, as we have a restriction in the line, the velocity will increase across the element which will result in an increase in the associated velocity pressure. Since the stagnation pressure across the element will be constant, if the fluid velocity and velocity pressure increases considerably, the static pressure across the element may be negative (conservation of energy laws). Users may wish to review the design and data entry in further detail if this scenario arises.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the Elevation row.

Automatically Size: Set to Off by default. When set to On, FluidFlow allows Engineers to auto-size venturi tubes using two sizing models as described below.

Sizing Model: Users can choose from two sizing models for venturi tubes: 1) Size for Flow & 2) Size for Pressure Loss. If you select Size for Flow, additional data entry is required as per Figure 2.

PumpInput Auto Size

Figure 2: Automatically sizing a venturi tube based on design flow rate.

Design Flow: This is the design flow requirement for the system. You can enter either a volumetric or mass flow rate.

Flow Unit: This is the unit of flow used when defining the flow rate for the venturi tube.

If you select Size for Pressure Loss, additional data entry is required as per Figure 3.

Figure 3: Automatically sizing a venturi tube based on design pressure loss.

Design Pressure Change: This is the design pressure rise requirement for the venturi tube.

Pressure Change Unit: This is the pressure (or head) unit that you use when defining the design pressure loss for the venturi tube.

Throat Diameter: This is the size of the constricted circular opening in the Venturi Tube.

Throat Length: This is the length of the constricted circular opening in the Venturi Tube.

Diameter Unit: The unit of length that defines the constricted opening that you have entered into the Throat Diameter row.

Throat Inlet Angle o: This is the included angle of the venturi inlet cone (typically 21o).

Throat Outlet Angle o: This is the included angle of the venturi diffuser/outlet cone (the recommended included angle of the outlet cone is 7-8o; however, it may be as large as 15o).

Heat Loss Model: For a Venturi Tube there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the element. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 4 below:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the Venturi Tube. Into Network means that the temperature of the fluid is increased as the fluid flows through the element.

Temperature Change: Use this row to specify the temperature change that occurs across the Venturi Tube. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the element as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 5.

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the Venturi Tube. Into Network means that the temperature of the fluid is increased as the fluid flows through the element.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a Venturi Tube. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the element as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Size Change > Venturi tube >

Return to chapter overview

Result Table - Venturi tube

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows a selection of the available results for a liquid phase state. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Venturi Tube.

Only descriptions for the relevant results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Calculated Size: This is the calculated throat size required to meet the design conditions as defined in the model when using the automatically size option.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the venturi tube that FluidFlow has calculated.

In Stagnation Pressure: The stagnation pressure at the venturi tube inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the venturi tube inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any venturi tube is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the venturi tube inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the venturi tube inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software using the equation:

K = 2 ΔP/ρv2

Out Stagnation Pressure: The stagnation pressure at the venturi tube outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the venturi tube outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a venturi tube is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the venturi tube outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as:

DP = (z1r1g + p1 + 0.5r1v12) - (z2r2g + p2 + 0.5r2v22)


Result Chart

Navigation: Components > Size Change > Venturi tube >

Return to chapter overview

Result Chart - Venturi tube

For all phase states a resistance chart is available. This shows the Venturi Tube friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Size Change > Venturi tube >

Return to chapter overview

Calculation Methods - Venturi tube

The calculation method used is based on the correlations and charts found in Pipe Flow - A Practical & Comprehensive Guide - AIChE [24], p 158.

The terms used in the equations below are set out illustrated in Figure 1.

Ventrui Tube Rev 1

Figure 1: Venturi Tube.

The loss coefficient for a venturi tube is determined from the following equation:

KT = fi (1 - β4) / 8 sin (α1/2) + fT (lT/dT) + 8.3 [tan αD/2]1.75 (1 - β2)2 + fD (1 - β4) / 8 sin (α1/2).

where:

β is the diameter ratio.

fi is the friction factor of the venturi inlet cone.

fT is the friction factor of the throat.

fD is the friction factor of the diffuser section of the venturi.

α1 is the included angle of the venturi inlet cone (typically 21o).

αD is the included angle of the venturi diffuser/outlet cone (the recommended included angle of the outlet cone is 7-8o;

however, it may be as large as 15o).

lT is the throat length.

dT is the throat diameter.


Auto-Sizing Venturi Tubes

From v3.31 onwards, FluidFlow includes a powerful Auto-Size feature which allows engineers to automatically size a range of elements including venturi tubes.

This series of examples demonstrates how venturi tubes can be automatically sized using either a design flow rate or design pressure loss. To begin, a standard venturi tube with a throat diameter of 10mm (throat length 3.33mm) has been modeled in a 10.0 M long 2 inch Schedule 40 steel pipeline. This allows us to establish the flow rate and pressure loss for this size of element in this system. We can then benchmark our automatically sized element against this base model.

Figure 1 shows the data entry for the venturi tube and Figure 2 gives an overview of the performance of this device in this system.

ValveTube Auto Size Fig 1

Figure 1: Data entry for a Venturi Tube (Auto Size function set to Off).

ValveTube Auto Size Fig 2

Figure 2: 10mm Venturi Tube Model (Auto Size function set to Off).

We can see in Figure 2 that the mass flow rate in the system has been calculated as 1.47 kg/s based on a throat diameter of 10mm.

Auto-Sizing based on Design Flow Rate.

Set the Automatically Size field for the venturi to "On", set the Sizing Model to Size for Flow and enter the design flow rate of 1.47 kg/s for the device (flow rate calculated in Figure 2). Note, the field titled Throat Diameter has now been removed from the Input Editor as FluidFlow will now automatically calculate the size required based on the design flow condition entered by the user.

The Input Editor for the venturi should now appear as shown in Figure 3.

ValveTube Auto Size Fig 3

Figure 3: Data entry for Auto-Sizing a Venturi Tube (Sized based on design flow rate established in Figure 2).

Figure 4 shows the calculated results for the venturi. As we can see, FluidFlow has established a required throat diameter of 10mm based on the design flow rate of 1.47 kg/s, i.e., matching Figure 2.

ValveTube Auto Size Fig 4

Figure 4: Auto-Sizing a Venturi Tube (Sized based on design flow rate established in Figure 2).

Auto-Sizing based on Design Pressure Loss.

Set the Automatically Size field for the venturi to "On", set the Sizing Model to Size for Pressure Loss and enter the design pressure loss of 50353.98 Pa for the device (pressure loss calculated in Figure 2).

The Input Editor for the venturi should now appear as shown in Figure 5.

ValveTube Auto Size Fig 5

Figure 5: Data entry for Auto-Sizing a Venturi Tube (Sized based on design pressure loss established in Figure 2).

Figure 6 shows the calculated results for the venturi based on a design pressure loss of 50353.98 Pa across the element. As we can see, FluidFlow has established a required throat diameter of 10mm, matching the results as shown in Figure 2. The element has therefore been automatically sized successfully.

ValveTube Auto Size Fig 6

Figure 6: Auto-Sizing a Venturi Tube (Sized based on design pressure loss established in Figure 2).

For further information, a detailed example of automatically sizing components is available at: Design Examples | Auto Equipment Sizing.


Reducer/Expander

A pipe reducer/expander allows for a change in pipe size to meet the hydraulic flow requirements of a system, or to adapt to existing piping of a different size. Reducers/expanders are usually concentric but eccentric reducers/expanders are used when required to maintain the same top or bottom-of-pipe level.


Data Entry

Navigation: Components > Size Change > Reducer/Expander >

Return to chapter overview

Data Entry - Reducer/Expander

The data entry requirement for a Reducer/Expander element is shown in Figure 1 below:

Figure 1: Data Entry for a Reducer/Expander element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For reducers/expanders there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the Elevation row.

Reducer Type: There are two available options to choose from, Eccentric and Concentric.

An eccentric reducer is a fitting used in piping systems between two pipes of different diameters. They are used where the diameter of the pipe on the upstream side of the fitting (i.e., where flow is coming from) is larger than the downstream side. Unlike a concentric reducer, which resembles a cone, eccentric reducers have an edge that is parallel to the connecting pipe. This results in the two pipes having offset center lines, unlike concentric reducers.

Horizontal liquid reducers are always eccentric, top flat, which prevents the build-up of air bubbles in the system. Eccentric reducers are sometimes used at the suction side of pumps to ensure air does not accumulate in the pipe. The gradual accumulation of air in a concentric reducer would result in a large bubble that could eventually cause the pump to stall or cause cavitation when drawn into the pump.

Horizontal gas reducers are generally always eccentric, bottom flat, which allows condensed water or oil to drain at low points.

Reducers in vertical lines are generally concentric unless the layout dictates otherwise.

Use Database Length: FluidFlow contains a database of acceptable lengths for reducers/expanders. You have the option of choosing from these lengths or entering your own specific length. In each case, FluidFlow will automatically determine the angle of the reducer during the solution routines.

Heat Loss Model: For a reducer/expander there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the element. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the reducer/expander. Into Network means that the temperature of the fluid is increased as the fluid flows through the element.

Temperature Change: Use this row to specify the temperature change that occurs across the reducer/expander. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the element as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the element. Into Network means that the temperature of the fluid is increased as the fluid flows through the element.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a reducer/expander. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the element as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Size Change > Reducer/Expander >

Return to chapter overview

Result Table - Reducer/Expander

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows a selection of the available results for a liquid phase state. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Reducer/Expander.

Only descriptions for the relevant results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the reducer/expander that FluidFlow has calculated.

In Stagnation Pressure: The stagnation pressure at the reducer/expander inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the reducer/expander inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any reducer/expander is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the reducer/expander inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the reducer/expander inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software using the equation:

K = 2 ΔP/ρv2

Out Stagnation Pressure: The stagnation pressure at the reducer/expander outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the reducer/expander outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a reducer/expander is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the reducer/expander outlet. For gases, velocity increases as the fluid flows across the reducer/expander. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as:

DP = (z1r1g + p1 + 0.5r1v12) - (z2r2g + p2 + 0.5r2v22)


Result Chart

Navigation: Components > Size Change > Reducer/Expander >

Return to chapter overview

Result Chart - Reducer/Expander

For all phase states a resistance chart is available. This shows the reducer/expander friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Size Change > Reducer/Expander >

Return to chapter overview

Calculation Methods - Reducer/Expander

For all phase states, the pressure loss across reducers/expanders is calculated from the following expressions:

Expanders

Expansion - Crane

Equation 1: Enlargements where the included angle of divergence is in the range: θ ≤ 45o.

K = 2.6 sin θ/2 (1 - β2)2 / β4.

Equation 2: Enlargements where the included angle of divergence is in the range: 45o < θ ≤ 180o.

K = (1 - β2)2 / β4.

Contractions

Contraction - Crane

Equation 3: Contractions where the included angle of convergence is in the range: θ ≤ 45o.

K = 0.8 sin θ/2 (1 - β2) / β4.

Equation 4: Contractions where the included angle of convergence is in the range: 45o < θ ≤ 180o.

K = 0.5 (sin θ/2)0.5 (1 - β2) / β4.

where:

β = the ratio of small to large pipe diameter.

θ = the included angle of divergence for enlargements and convergence for contractions. Note, FluidFlow calculates the angle (θ) automatically based on the small and large pipe diameters and transition length.

Note, FluidFlow applies a correction to the above equations depending on the reducer/expander type, i.e., Concentric or Eccentric.

For a more detailed discussion and explanation refer to Crane [13].


Abrupt Size Change

FluidFlow allows the user to define abrupt pipe enlargements or reductions. The flow of fluid through an enlargement (increase in pipe diameter) results in a decrease in velocity and consequently, a fluid static pressure rise. Similarly, the flow of fluid through a pipe reduction (decrease in pipe diameter) results in an increase in velocity and consequently, a fluid static pressure drop.


Data Entry

Navigation: Components > Size Change > Abrupt Size Change >

Return to chapter overview

Data Entry - Abrupt Size Change

The data entry requirement for an Abrupt Size Change element is shown in Figure 1 below:

Figure 1: Data Entry for an Abrupt Size Change Element.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For abrupt size change elements there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the Elevation row.

Heat Loss Model: For an "Abrupt Size Change" element there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the element. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the "abrupt size change" element. Into Network means that the temperature of the fluid is increased as the fluid flows through the element.

Temperature Change: Use this row to specify the temperature change that occurs across the "Abrupt Size Change" element. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the element as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the element. Into Network means that the temperature of the fluid is increased as the fluid flows through the element.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) an "Abrupt Size Change" element. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the element as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the "Abrupt Size Change" element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Size Change > Abrupt Size Change >

Return to chapter overview

Result Table - Abrupt Size Change

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows a selection of the available results for a liquid phase state. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for an Abrupt Size Change Element.

Only descriptions for the relevant results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow through the "Abrupt Size Change" element that FluidFlow has calculated.

In Stagnation Pressure: The stagnation pressure at the "Abrupt Size Change" element inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the "Abrupt Size Change" element inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any "Abrupt Size Change" element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the "Abrupt Size Change" element inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the "Abrupt Size Change" element inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

K Value: This represents the Pressure Loss Coefficient (K) which has been automatically back-calculated by the software using the equation:

K = 2 ΔP/ρv2

Out Stagnation Pressure: The stagnation pressure at the "Abrupt Size Change" element outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside an "Abrupt Size Change" element is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Velocity: The velocity at the "Abrupt Size Change" element outlet. For gases, velocity increases as the fluid flows across the "Abrupt Size Change" element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Out Stag. Temperature: This is the stagnation temperature at the "Abrupt Size Change" element outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as:

DP = (z1r1g + p1 + 0.5r1v12) - (z2r2g + p2 + 0.5r2v22)


Result Chart

Navigation: Components > Size Change > Abrupt Size Change >

Return to chapter overview

Result Chart - Abrupt Size Change

For all phase states a resistance chart is available. This shows the "Abrupt Size Change" element friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Size Change > Abrupt Size Change >

Return to chapter overview

Calculation Methods - Abrupt Size Change

For all phase states, the pressure loss across an abrupt size change due to sudden enlargements is calculated from the expression:

K1 = (1 - β2) 2

and for sudden contractions, the pressure loss across is calculated from the expression:

K1 = 0.5 (1 - β2)

where:

β = the ratio of small to large pipe diameter.

Note, subscripts 1 & 2 denote the internal diameter of the small and large pipes respectively.

For a more detailed discussion and explanation refer to Crane [13].


Relief Devices

FluidFlow allows you to model relief devices as either relief valves, bursting disks, or a series configuration of both. These components can be autosized or be used to evaluate the performance of certain relief valve sizes or bursting disk characteristics.


Relief Valve and Bursting Disk

A relief valve is a type of valve used to control or limit the pressure in a system which can build up due to abnormal system operating conditions or instrument/equipment failure.

The pressure is relieved by allowing the pressurized fluid to flow from an auxiliary passage out of the system. The relief valve is designed or set to open at a predetermined set pressure to protect a system from being subjected to pressures that exceed its design limits. When the set pressure is exceeded, the relief valve becomes the path of least resistance as the valve is forced open and a portion of the fluid is diverted through this auxiliary route.

When modelling relief valves, users have the option of manually selecting the size of the orifice, or allowing FluidFlow to size the orifice based on the design system operating conditions.

A bursting disk is a non-reclosing device that is designed to rupture or "burst" at a predetermined pressure, thus relieving a system of a dangerous build-up of pressure or vacuum. Bursting disks react quickly to overpressure conditions. This rapid response is crucial in applications where immediate pressure relief is necessary to prevent equipment damage.

When modelling bursting disks, users have the option of defining the certified resistance coefficient "Kr". The bursting disk is treated as a "fitting" and uses the Resistance to Flow Method to estimate the frictional losses.


Data Entry

Navigation: Components > Relief Devices > Relief Valve and Bursting Disk >

Return to chapter overview

Data Entry - Relief Valve and Bursting Disk

The data entry requirement for a relief valve element is shown in Figure 1 below:

Figure 1: Data Entry for a Relief Valve and Bursting Disk.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you enter data here, you can use this later to sort via the Lists.

Status: There are 3 possible status values for relief valves: 'On', 'Off', or 'Ignore Pressure Loss'.

·'On' is the normal position and tells the application that this node is open and to calculate the flow out of the element.

·'Off' means that this component is closed to flow. You can close resistances to isolate part of a network.

·'Ignore Pressure Loss' means that the node is Open, but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (baseline with elevation = 0) that is convenient for you. When you construct any network, you need to decide on a datum. This can typically be ground level or the centerline of a pump. In flow calculations, absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The units of measurement used to specify the component elevation.

Role: Allows you to configure relief protection configuration, whether 'Safety Valve Only', 'Bursting Disk Only', or 'Safety Valve and Bursting Disk' combination.

Automatically Size: This option is set to 'On' by default, meaning the software will automatically calculate the relief valve size based on the set pressure, design flow rate, discharge coefficient (Kd), back pressure factor (Kb), and combination correction factor (Kc). FluidFlow also suggests the closest matching standard orifice size based on the calculated system operating conditions. Note, that this is only applicable to the API RP520 pressure loss model as the ISO 4126 methodology doesn't utilize standard orifice sizes.

If the 'Automatically Size' option is set to 'Off', additional rows will appear:

Figure 2: Additional data entry requirements for a Relief Valve when 'Automatically Size' is set to 'Off'.

When the 'Automatically Size' option is set to 'Off', the software will calculate the flow rate, fluid velocity, pressure loss, etc., through the relief valve (relief valve and bursting disk) based on the relief valve size manually selected by the user in the row titled 'Standard Orifice Size'.

Use Standard Size: FluidFlow contains a set of standard orifice sizes which are designated by orifice letter as defined in the API standards. Each letter refers to a specific effective orifice area, for example, the effective orifice area of a P orifice is 6.38in2 / 4120mm2. Selecting 'Yes' allows you to select a standard orifice area from a dropdown list. Selecting 'No' gives the option of entering your own non-standard orifice area.

Non-Standard Size Area: This row is available if you select not to use a standard valve orifice size. Enter the valve orifice area in this row.

Size Unit: These are the units used to specify the non-standard valve orifice area.

Relief Valve Name: You cannot add a name directly into this row by typing an entry. Instead, when you focus on this row a button appears at the right edge. Clicking the button pops up the Set Component dialog, which allows you to make a relief valve model selection. Note, care should be taken to ensure that the selected relief valve is suitable for the given modelling application, for example, a JBS type relief valve is applicable to gas/steam systems whereas a WB200 is more suited to liquid systems.

Further information on the relief valve usage may be obtained by selecting the Database | Relief Devices menu item, expanding the 'Relief Valve' field to reveal all safety valves in the database, and then selecting the relevant valve from the list.

Pressure Loss Model: This refers to the calculation method you wish to use. Users can choose from the methodology applied in 'API (American Petroleum Institute) RP520 Part I' or 'ISO 4126-1'.

·'API RP520 Part 1' allows calculation for all fluid phases (Non-Newtonian flow may not be accurate).

·'ISO 4126' is for liquids and gases/vapors only.

Overpressure: The pressure increase over the set pressure of the relieving device.

The overpressure which actuates the pressure relief devices is caused by an inadvertent energy input. The most common causes of overpressure scenarios are external fire, blocked outlet, inadvertent opening of control valve, check valve malfunction, utility failure (power, cooling water, instrument air, steam, fuel gas, fuel oil, inert gas, etc.), liquid overfilling, thermal expansion, abnormal process conditions such as runaway chemical reactions, and equipment failure (pumps, fans, blowers, compressors, etc.).

The overpressure is generally expressed as a percentage of the set pressure at which the relief valve is designed to operate. The options for this entry are: 'None (0%)', 'Sole Device (10%)', 'Multiple Devices (16%)', and 'External Fire (21%)'.

Accumulation is the pressure increase over the Maximum Allowable Working Pressure (MAWP) of the vessel. It is expressed in pressure units or as a percentage of MAWP or design pressure.

The overpressure is based on the set pressure of the relieving device while the accumulation is based on the MAWP of the vessel.

Overpressure is the same as accumulation only when the relieving device is set to open at the MAWP of the vessel.

The difference between overpressure and accumulation is illustrated in Figure 3.

Figure 3: Difference between Overpressure and Accumulation.

Note, ASME Code Section VIII and API RP520 Part 1 set out details of permissible pressure accumulation levels for a variety of relief valve installation configurations. FluidFlow allows users to choose between each. The following is a synopsis of the various options available.

- None (0%)

This option allows the user to set the overpressure/accumulation during abnormal operating conditions to 0% over the set pressure/MAWP.

- Sole Device (10%)

This option may be selected when the source of overpressure is NOT being generated by an external fire condition and the system is protected by a single relief device. In these circumstances, the system is allowed to experience an overpressure/accumulation during abnormal operating conditions of up to 10% over the set pressure/MAWP. The single valve must therefore be capable of relieving the entire system's overpressure.

Design Note: The valve relieving capacity must equal or exceed the capacity capable of being generated by the protected system at its overpressure condition.

- Multiple Devices (16%)

There is no requirement in ASME Code Section VIII that requires the use of multiple relief devices nor is there a requirement that multiple valves be of the same size. However, some applications may be such that the required relieving capacity is too high for a single device. In this scenario, the overpressure/accumulation for a non-fire generated overpressure condition shall not exceed 16% above the set pressure/MAWP. This additional overpressure/accumulation allows the various relief devices to be set at different pressures. This staggered set point approach helps eliminate interaction between the multiple safety valves.

Note, that the primary safety relief valve must be set no higher than the design pressure/MAWP but may also be set lower than the design pressure/MAWP. Any additional or supplementary safety valves can be set higher than the design pressure/MAWP but at a level not higher than 5% above the design pressure/MAWP.

Design Note: The sum of the individual valve relieving capacities must equal or exceed the capacity capable of being generated by the protected system at its overpressure condition. Although there is no requirement to ensure each relief valve is the same size, it is a common occurrence and is useful in terms of utilizing the supply of spare parts.

- External Fire (21%)

This option may be selected as an emergency situation where the protected system may experience an overpressure condition as a result of exposure to an external fire. This option applies to both single and multiple safety valve installations. The allowable overpressure/accumulation under this condition is 21% above the set pressure/MAWP.

To minimize the quantity of valves required to protect the system, it is important to firstly select valves for overpressure operating conditions. As fire sizing should be considered as an emergency situation, consideration should be given to the valves already selected for an overpressure operating conditions and any fire sized valve relieving requirements should only be additive to those already selected.

Design Note: The sum of the individual valve relieving capacities must equal or exceed the capacity capable of being generated by the protected system at its 21% overpressure/accumulation condition.

Set Pressure: The inlet gauge pressure at which the pressure relief device is set to open under service conditions.

The Maximum Allowable Working Pressure (MAWP) is the maximum gauge pressure permissible at the top of a completed vessel in its normal operating position at the designated coincident temperature specified for that pressure. The MAWP is the basis for the pressure setting of the pressure relief devices that protect the vessel. The MAWP is normally greater than the design pressure but can be equal to the design pressure when the design rules are used only to calculate the minimum thickness for each element and calculations are not made to determine the value of MAWP.

The Design Pressure (DP) is the pressure, together with the Design Temperature (DT), used to determine the minimum permissible thickness or physical characteristic for each vessel component as determined by the vessel design rules. The design pressure is selected by the user to provide a suitable margin above the most severe pressure expected during the normal operation at a coincident temperature. It is the pressure specified on the purchase order. This pressure may be used in place of the MAWP in all cases where the MAWP has not been established. The design pressure is equal to or less than the MAWP.

Design Note: During the pressure relief valve design, the engineer uses the design pressure as the set pressure of the relief valve since MAWP is not available. Moreover, the design pressure is equal to or less than the MAWP, (DP <= MAWP). Thus, it is safe to use the design pressure as our set pressure since the relief valve will open at this pressure (If the design pressure is lower than the MAWP). If the design pressure is equal to the MAWP, it is still safe since the hydrotest pressure of the equipment is 130% of the MAWP per ASME Section VIII Div. 1 or 150% of the MAWP for other codes/standards.

For the 'Safety Valve and Bursting Disk' role, the bursting disk is installed at the inlet of the safety valve, the devices are considered to be close-coupled, and the specified burst pressure and set pressure should be the same nominal value.

Pressure Unit: The pressure units used to specify the Set Pressure.

Design Flow: This represents the required capacity, relieving capacity, or relieving load of the safety relief valve. The relieving load/capacity is the calculated mass/volumetric vent rate which is required to maintain the system pressure within the allowable limits. The relieving load due to a particular overpressure scenario should be calculated based on the heat and material balance under failure conditions.

Note, that care should be taken when modelling gas systems to ensure the correct Reference Gas Volume Flow Units have been applied, i.e., NTP (0oC and 101325 Pa) or STP (15oC and 101325 Pa). To set the reference gas condition, select the 'Options | Calculation...' menu item, followed by the 'Gas' tab. You can then select NTP or STP from the drop-down menu.

Flow Unit: The flow units used to specify the valve relieving flow capacity.

Discharge Coefficient (Kd): For relief system design purposes, the ideal flow calculated is adjusted to establish the design/actual capacity of the relief valve. The discharge coefficient is the ratio of measured relieving capacity to the theoretical relieving capacity, i.e., Actual Flow Capacity/Theoretical (Ideal) Flow Capacity. The actual mass flow rate through the relief valve is diminished from the theoretical value by the existence of a fluid boundary layer. Therefore, a "discharge coefficient" (Kd) is applied to the theoretical value required to obtain the actual flow rate.

ASME code requires a "safety factor" of 0.9 or less to account for uncertainties in the calculated flow and to obtain the "certified flow". Certified coefficients of discharge "0.9Kd" and actual relief device nozzle areas "ADevice" are available from the National Board Pressure Relief Device Certifications, aka the "Red Book". Note that certified coefficients of discharge provided in the NB "Red Book" include the "0.9" ASME safety factor.

The NB "Red Book" uses the symbol "K" to represent the certified coefficient of discharge. The value of "K" is 0.9 times the experimental "best estimate" coefficient of discharge "Kd".

Note, that users are required to enter a value for Kd when the 'Automatically Size' option is set to 'On'. If you are not using the 'Automatically Size' function and intend to manually select a relief valve from the Input Editor, please note that the value for Kd is defined for each relief valve in the component database. Typical values for Kd = 0.975 for many nozzle-type valves however, it is recommended that accurate values for Kd be obtained from the device manufacturer.

Note also, that users have the option of defining additional relief valves in the components database via the Database | Relief Devices menu item. It is recommended that when adding new valves the value for Kd should be obtained from the manufacturer.

Back Pressure Correction Factor (Kb): With a balanced valve, high back pressure will tend to produce a closing force on the unbalanced portion of the valve disc. This force may result in a reduction in lift and an associated reduction in flow capacity. Capacity correction factors called back pressure correction factors, are provided by manufacturers to compensate for this reduction in flow. Note, Kb = 1.0 if back pressure conditions do not apply.

Combination Correction Factor (Kc): This input field appears when the selected role is 'Safety Valve and Bursting Disk' also known as combination systems (Safety Valve and Bursting Disk in series). Combination systems experience extra turbulence as a result of the bursting of the disk and are therefore modelled as a safety valve nozzle modified by a certified 'combination factor' Kc. The correction factor 'Kc' is applied to account for pressure loss across a bursting disk upstream of a relief valve during overpressure conditions. Typically, Kc = 0.9 when a bursting disk is installed in combination with a relief valve. Nonetheless, this value can be superseded by a certified manufacturer Kc value for the relief device combination.

Use Kr from Database: This field is displayed when the selected role is 'Bursting Disk Only' and enables users to manually enter a 'Kr' value by selecting the 'No' option, or to apply a certified 'Kr' value (via the 'Kr Component Name' field) from manufacturers as defined and stored in the Relief Devices database by selecting 'Yes'.

Kr Component Name: Applicable only to the 'Bursting Disk Only' role, when 'Use Kr from Database' is set to 'Yes'. Selecting this field will display the Set Component dialog for the Bursting Disks database.

Certified Resistance Coefficient (Kr): This input field appears when the selected role is 'Bursting Disk Only' and 'Use Kr from Database' is set to 'No'. It allows you to numerically define a 'Kr' value. The resistance of the bursting disk is modelled using a certified resistance coefficient "Kr". The flow resistance for bursting disk devices can be obtained from the manufacturer. The flow resistance is expressed in terms of velocity head loss "Kr". ASME Code certified values should be used where available.

Loss Basis: This input field appears when the selected role is 'Bursting Disk Only'. It is used to configure the friction loss calculation basis involving bursting disk Kr values using Equation 6-26 of Crane Technical Paper 410. The user has the option to select either 'Upstream Velocity' or 'Downstream Velocity' to calculate the frictional loss.

Heat Loss Model: For a relief valve there are 3 possible entries: 'Ignore Heat Loss/Gain', 'Fixed Temperature Change', and 'Fixed Transfer Rate':

·Selecting 'Ignore Heat Loss/Gain' means that flow across the valve is assumed to be adiabatic.

·Selecting 'Fixed Temperature Change' allows you to specify a temperature change for the fluid as it flows through the valve.

·'Fixed Transfer Rate' allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the valve.

Selecting 'Fixed Temperature Change' adds additional rows to the Input Editor:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change

- Heat Transfer Direction: This value can either be: 'Out of Network' or 'Into Network'.

·'Out of Network' means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the relief valve.

·'Into Network' means that the temperature of the fluid is increased as the fluid flows through the valve.

- Temperature Change: Use this row to specify the temperature change that occurs across the relief valve. The 'Heat Transfer Direction' setting determines if the temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the valve as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur.

NOTE: You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation

Heat Transferred = Mass Flow * Specific Heat * Temperature Change

but does not make the calculation

Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force

If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated; instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

- Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting 'Fixed Heat Transfer' can be conceptualized as the converse of selecting 'Fixed Temperature Change'. As before, additional rows appear in the Input Editor:

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate

- Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a relief valve. This row works in relation to the 'Heat Transfer Direction' setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the valve as the heat transfer occurs and also calculates the total temperature change that will occur.

NOTE: You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation

Heat Transferred = Mass Flow * Specific Heat * Temperature Change

but does not make the calculation

Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force

If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated; instead, you will get a warning and the friction loss calculation will be made according to the upstream phase state.

- Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add extra "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: 'Show' or 'Hide'. This row is available for all components. This allows you to decide what properties you wish to show on the flowsheet and for which components. If 'Show' is selected then additional rows appear in the Input Editor, from which you can set text font, color, size, text position, and the properties you wish to display:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet

- Alignment: This row controls the alignment of the component properties on-screen. Possible values are 'Top', 'Bottom', 'Left', or 'Right'. The alignment of the displayed text is relative to the center of the component.

- Font: Text font properties can be set from the standard windows font dialog.

- Properties: Shows/hides Input and Result fields for the display of properties on the flowsheet. This allows for the visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Relief Devices > Relief Valve and Bursting Disk >

Return to chapter overview

Result Table - Relief Valve and Bursting Disk

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows a selection of the available results for a liquid phase state. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Relief Valve.

Only descriptions of the relevant results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Back Pressure Correction Factor (Kb): With a balanced valve, high back pressure will tend to produce a closing force on the unbalanced portion of the valve disc. This force may result in a reduction in lift and an associated reduction in flow capacity. Capacity correction factors, called back pressure correction factors, are provided by manufacturers to compensate for this reduction in flow. Note, that Kb = 1.0 if back pressure conditions do not apply.

Calculated Size: This represents the exact orifice area required based on the design flow and set pressure conditions defined on the Input Editor.

Certified Resistance Coefficient (Kr): The resistance of the bursting disk is modelled using a certified resistance coefficient "Kr". The flow resistance for bursting disk devices can be obtained from the manufacturer. The flow resistance is expressed in terms of velocity head loss "Kr". ASME Code certified values should be used where available.

Combination Correction Factor (Kc): The correction factor "Kc" is applied to account for pressure loss across a bursting disk upstream of a relief valve during overpressure conditions. Typically, Kc = 0.9 when a bursting disk is installed in combination with a relief valve. Nonetheless, this value can be superseded by a certified manufacturer Kc value for the relief device combination.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Discharge Coefficient (Kd): For relief system design purposes, the ideal flow calculated is adjusted to establish the design/actual capacity of the relief valve. The discharge coefficient is the ratio of measured relieving capacity to the theoretical relieving capacity, i.e., Actual Flow Capacity/Theoretical (Ideal) Flow Capacity. The actual mass flow rate through the relief valve is diminished from the theoretical value by the existence of a fluid boundary layer. Therefore, a "discharge coefficient" (Kd) is applied to the theoretical value required to obtain the actual flow rate.

Flow: This is the flow through the Relief Valve that FluidFlow has calculated.

Flow at NTP: This is the volumetric flow referenced to normal conditions (0°C and 101325 Pa). NTP flow is the same as the gas flows through the element.

Flow at STP: This is the volumetric flow referenced to standard conditions (15°C and 101325 Pa). STP flow is the same as the gas flows through the element.

In Mach Number: This is the ratio of inlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a Mach number greater than 1 within this element. The velocity of sound is a thermo-physical property and depends on temperature and pressure.

In Stagnation Pressure: The stagnation pressure at the relief valve inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

In Stag. Temperature: This is the stagnation temperature at the relief valve inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside any relief valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

In Static Temperature: The static temperature at the relief valve inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation:

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the relief valve inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with a two-phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease as fluid flows across an element, for example, the cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Mach Number: This is the ratio of outlet velocity to the velocity of sound at the inlet conditions. It is not possible to reach a Mach number greater than 1 within this element. The velocity of sound is a thermo-physical property and depends on temperature and pressure.

Out Stagnation Pressure: The stagnation pressure at the relief valve outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy. Stagnation pressure is a measure of the usefulness of the gas's energy.

Out Stag. Temperature: This is the stagnation temperature at the relief valve outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a relief valve is not the static pressure, unless there is no flow. Stagnation pressure is the flowing pressure.

Out Static Temperature: The static temperature at the element outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation:

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the relief valve outlet. For gases, velocity increases as the fluid flows across the valve. This can also occur with a two-phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example, the cooling of a liquid.

Standard Orifice Size: FluidFlow automatically suggests the closest matching standard orifice size based on the calculated conditions noted above. Note, that this is only applicable to the API RP520 pressure loss model as the ISO 4126 methodology doesn't utilize standard orifice sizes.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as:

DP = (z1r1g + p1 + 0.5r1v12) - (z2r2g + p2 + 0.5r2v22)


Result Chart

Navigation: Components > Relief Devices > Relief Valve and Bursting Disk >

Return to chapter overview

Result Chart - Relief Valve and Bursting Disk

Charts are not available for Relief Valves and Bursting Disks.


Calculation Methods

Navigation: Components > Relief Devices > Relief Valve and Bursting Disk >

Return to chapter overview

Calculation Methods - Relief Valve

There are two calculation methods available in FluidFlow for predicting the pressure loss through relief valves: API RP 520 & ISO 4126. API RP 520 caters to Newtonian liquids, steam, gas/vapors, and two-phase flow. ISO 4126 caters for liquid and gas flow only.

API RP 520: For gas or vapor critical flow relief, the sizing equation used is:

A = [w (T Z)0.5 / (C Kd P1 Kb Kc (M 0.5))]

where:

A | is the effective discharge area.
w | is the mass flow (lb/hr).
T | is the absolute temperature of the gas.
Z | is the gas compressibility factor.
C | is a gas constant dependent on the specific heat ratio of the gas.
Kd | is the rated coefficient of discharge. For preliminary sizing estimation, a discharge coefficient of 0.975 may be used when a relief valve is installed with or without a bursting disk in combination.
P1 | is the upstream relieving pressure + overpressure + atmospheric pressure.
Kb | is the capacity correction factor due to back pressure.
Kc | is the combination correction factor for installations with a bursting disk upstream of the pressure relief valve. A value of 1.0 is occasionally used when a bursting disk is not installed and 0.9 is used when a rupture disk is installed in combination with a pressure relief valve and the combination does not have a published value.
M | is the gas molecular weight.

API RP 520: For gas or vapor sub-critical flow relief, the sizing equation used is:

A = [17.9 w (T Z)0.5 / (F2 Kd Kc (M P1 rP0.5))

where:

A | is the effective discharge area.
w | is the mass flow (kg/h).
T | is the absolute temperature of the gas.
Z | is the gas compressibility factor.
F2 | is the coefficient for subcritical flow.
Kd | is the rated coefficient of discharge. For preliminary sizing estimation, a discharge coefficient of 0.975 may be used when a relief valve is installed with or without a bursting disk in combination.
Kc | is the combination correction factor for installations with a bursting disk upstream of the pressure relief valve. A value of 1.0 is occasionally used when a bursting disk is not installed and 0.9 is used when a rupture disk is installed in combination with a pressure relief valve and the combination does not have a published value.
P1 | is the upstream relieving pressure + overpressure + atmospheric pressure.
Kb | is the capacity correction factor due to back pressure.
M | is the gas molecular weight.

API RP 520: For liquid flow relief, the sizing equation used is:

A = [(Q (G0.5)) / (38 Kd Kw Kc Kv (rP0.5))]

where:

A | is the effective discharge area.
Q | is the mass flow rate.
G | is the specific gravity.
Kd | is the rated coefficient of discharge. For preliminary sizing estimation, a discharge coefficient of 0.975 may be used when a relief valve is installed with or without a bursting disk in combination.
Kw | is the correction factor due to back pressure. In systems where the back pressure is atmospheric, you can use a value of 1.0. This
 | correction factor applies to balanced bellows valves only.
Kc | is the combination correction factor for installations with a bursting disk upstream of the pressure relief valve. A value of 1.0 is occasionally used when a bursting disk is not installed and 0.9 is used when a rupture disk is installed in combination with a pressure relief valve and the combination does not have a published value.
Kv | is the correction factor due to viscosity. Note, that FluidFlow will determine this value as part of the calculation process.

API RP 520: For steam flow relief, the sizing equation used is:

A = [w / (51.5 (P1 Kd Kb Kc KN KSH))]

where:

A | is the effective discharge area.
w | is the mass flow rate.
P1 | is the upstream relieving pressure. This is the set pressure plus the allowable overpressure.
Kd | is the rated coefficient of discharge. For preliminary sizing estimation, a discharge coefficient of 0.975 may be used when a relief valve is installed with or without a bursting disk in combination.
Kb | is the back pressure correction factor for vapor. This correction factor applies | to balanced bellows valves only.
Kc | is the combination correction factor for installations with a bursting disk upstream of the pressure relief valve. A value of 1.0 is occasionally used when a bursting disk is not installed and 0.9 is used when a rupture disk is installed in combination with a pressure relief valve and the combination does not have a published value.
KN | is the capacity correction factor for high-pressure dry saturated steam (set pressures above 1500 psi a). This correction factor is applied to account for the deviation between steam flow as determined by the Napier equation and the actual saturated steam flow rate at high pressures.
KSH | is the superheated steam correction factor. Note, that steam sizing equations are based on the flow of dry saturated steam When sizing a superheated steam application, this superheat correction factor is applied to correct the calculated saturated steam flow to superheated steam flow. For saturated steam at any pressure, KSH = 1.0. When the steam is superheated, FluidFlow will determine the value for KSH automatically.

API RP 520: For two-phase flashing or non-flashing flow relief through a pressure relief valve, the sizing equation used is:

A = [(0.04 w) / (Kd Kb Kc G)]

where:

A | is the effective discharge area.
w | is the mass flow rate.
Kd | is the rated discharge coefficient which should be obtained from the manufacturer. For preliminary sizing estimation, a discharge coefficient of 0.85 is occasionally used.
Kb | is the back pressure correction factor for vapor which should be obtained from the manufacturer. The back pressure correction factor applies to balanced bellows valves only.
Kc | is the combination correction factor for installations with a bursting disk upstream of the pressure relief valve. A value of 1.0 is occasionally used when a bursting disk is not installed and 0.9 is used when a rupture disk is installed in combination with a pressure relief valve and the combination does not have a published value.
G | is the mass flux.

Note, for flashing flow, the two-phase system must consist of a saturated liquid and saturated vapor and contain no non-condensable gas. For non-flashing flow, the two-phase system must consist of a highly sub-cooled liquid and either a non-condensable gas, condensable vapor, or both. Fluids both above and below the thermodynamic critical point in condensing two-phase flow can also be handled.

API RP 520: For two-phase sizing of sub-cooled liquid at the pressure relief valve inlet, the sizing equation used is:

A = [(0.3208 Q ρ) / (Kd Kb Kc G)]

where:

A | is the effective discharge area.
Q | is the volumetric flow rate.
ρ | is the liquid density.
Kd | is the rated discharge coefficient which should be obtained from the manufacturer. For preliminary sizing estimation, a discharge coefficient of 0.65 is occasionally used for subcooled liquids and 0.85 for saturated liquids.
Kb | is the back pressure correction factor for vapor which should be obtained from the manufacturer. The back pressure correction factor applies to balanced bellows valves only.
Kc | is the combination correction factor for installations with a bursting disk upstream of the pressure relief valve. A value of 1.0 is occasionally used when a bursting disk is not installed and 0.9 is used when a rupture disk is installed in combination with a pressure relief valve and the combination does not have a published value.
G | is the mass flux.

This equation can be used for sizing pressure relief valves handling a sub-cooled liquid (including saturated) at the inlet. No condensable vapor or non-condensable gas should be present at the inlet. The sub-cooled liquid either flashes upstream or downstream of the pressure relief valve throat depending on which sub-cooling region the flow falls into.

The following equation is only applicable to turbulent flow systems. Most two-phase relief scenarios will however be within the turbulent flow regime.

API RP 520: For two-phase flashing flow relief with non-condensable gas according to API RP 520, the sizing equation used is:

A = [(0.04 w) / (Kd Kb Kc G)]

where:

A | is the effective discharge area.
w | is the mass flow rate.
Kd | is the rated discharge coefficient which should be obtained from the manufacturer. For preliminary sizing estimation, a discharge coefficient of 0.85 is occasionally used.
Kb | is the back pressure correction factor for vapor which should be obtained from the manufacturer. The back pressure correction factor applies to balanced bellows valves only.
Kc | is the combination correction factor for installations with a bursting disk upstream of the pressure relief valve. A value of 1.0 is occasionally used when a bursting disk is not installed and 0.9 is used when a rupture disk is installed in combination with a pressure relief valve and the combination does not have a published value.
G | is the mass flux.

This equation can be used for sizing pressure relief valves handling two-phase flashing flow with a non-condensable gas or both a condensable vapor and non-condensable gas.

ISO 4126: For gas or vapor critical flow relief, the sizing equation used is:

A = [Qm (To Zo)0.5 / C α Po (M)0.5]

where:

A

is the effective discharge area.

Qm

is the mass flow rate.

To

is the relieving temperature.

Zo

is the gas compressibility factor

C

is a gas constant dependent on the specific heat ratio of the gas.

α

is the discharge coefficient.

- In the case of an internally protruding branch/nozzle, α = 0.68.

- In the case of a flush branch/nozzle or a block flange whose inlets are not of hydrodynamic configuration, α = 0.73.

- In the case of a branch/nozzle or a block flange of hydrodynamic configuration, e.g. with rounded or chamfered inlets, α = 0.8.

Note, for further information and an explanation of the above terms, refer to ISO 4126.

Po

is the relieving pressure.

M

is the gas molecular weight.

ISO 4126: For gas or vapor sub-critical flow relief, the sizing equation used is:

A = [Qm (To Zo)0.5 / C Kb α Po (M)0.5]

where:

A

is the effective discharge area.

Qm

is the mass flow rate.

To

is the relieving temperature.

Zo

is the gas compressibility factor

C

is a gas constant dependent on the specific heat ratio of the gas.

α

is the discharge coefficient.

- In the case of an internally protruding branch/nozzle, α = 0.68.

- In the case of a flush branch/nozzle or a block flange whose inlets are not of hydrodynamic configuration, α = 0.73.

- In the case of a branch/nozzle or a block flange of hydrodynamic configuration, e.g. with rounded or chamfered inlets, α = 0.8.

Note, for further information and an explanation of the above terms, refer to ISO 4126.

Kb

is the capacity correction factor for subcritical flow.

Po

is the relieving pressure.

M

is the gas molecular weight.

ISO 4126: For liquid flow relief which does not flash to vapor, the sizing equation used is:

A = [0.621 Qm / Kv α (ρ rP)0.5]

where:

A

is the effective discharge area.

Qm

is the mass flow rate.

Kv

is the viscosity correction factor.

α

is the discharge coefficient.

- In the case of an internally protruding branch/nozzle, α = 0.68.

- In the case of a flush branch/nozzle or a block flange whose inlets are not of hydrodynamic configuration, α = 0.73.

- In the case of a branch/nozzle or a block flange of hydrodynamic configuration, e.g. with rounded or chamfered inlets, α = 0.8.

Note, for further information and an explanation of the above terms, refer to ISO 4126.

ρ

is the fluid density.

rP

is the differential pressure on venting across the safety relief device.

ISO 4126: For steam flow relief, the sizing equation used is:

A = [3.469 Qm (Vo)0.5 / C α (Po)0.5]

where:

A

is the effective discharge area.

Qm

is the mass flow rate.

Vo

is the specific volume at actual relieving pressure and temperature.

C

is a gas constant dependent on the specific heat ratio of the gas.

α

is the discharge coefficient.

- In the case of an internally protruding branch/nozzle, α = 0.68.

- In the case of a flush branch/nozzle or a block flange whose inlets are not of hydrodynamic configuration, α = 0.73.

- In the case of a branch/nozzle or a block flange of hydrodynamic configuration, e.g. with rounded or chamfered inlets, α = 0.8.

Note, for further information and an explanation of the above terms, refer to ISO 4126.

Po

is the relieving pressure.

ISO 4126: For two-phase flow relief systems, the ISO 4126 calculation method has not been implemented and as such, FluidFlow will revert to the API RP 520 solution procedure when this option is selected.


Heat Exchangers

A heat exchanger is a piece of equipment built for efficient heat transfer from one medium to another. The media is typically separated by a "solid wall" so that they never mix. They are widely used in space heating, refrigeration, air conditioning, power plants, chemical plants, petrochemical plants, petroleum refineries, natural gas processing, and sewage treatment.


Shell and Tube Exchanger

Shell and tube heat exchangers consist of a series of tubes. One set of these tubes contains the fluid that must be either heated or cooled. The second fluid runs over the tubes that are being heated or cooled so that it can either provide the heat or absorb the heat required. A set of tubes is called the tube bundle and can be made up of several types of tubes: plain, longitudinally finned, etc. Shell and tube heat exchangers are typically used for high-pressure applications (with pressures greater than 30 bar and temperatures greater than 260 °C).


Data Entry

Navigation: Components > Heat Exchangers > Shell and Tube Exchanger >

Return to chapter overview

Data Entry - Shell and Tube Exchanger

The data entry requirement for flow through a shell and tube heat exchanger is shown below, In this version of FluidFlow you can only consider either the shell side or the tubeside.

Figure 1: Data Entry for flow through a shell and tube heat exchanger.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For heat exchangers there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Pressure Loss Model: FluidFlow allows the user to choose from three available pressure loss models: 1) Standard Relationships, 2) Manufacturer Loss Data & 3) Fixed Value (Pressure Loss Constant).

Standard Relationships: Allows you to enter the geometric characteristics of the heat exchanger in which case, FluidFlow will solve the equations noted in Shell and Tube Exchanger | Calculation Method.

Manufacturer Loss Data: Exposes a series of rows on the Input inspector allowing you to enter sufficient data to define the pressure loss relationship as a function of flow (similar to the Kv node). When you define the flow, pressure loss and reference density for a heat exchanger, FluidFlow will automatically scale up or down depending on the actual flow experienced in the system.

Fixed Value: Exposes a series of rows on the Input inspector allowing you to define a constant pressure loss for the heat exchanger irrespective of the flow.

Number of Tubes: The total number of tubes in the heat exchanger, irrespective of the total number of passes.

Figure 2- Schematic of a two tube pass shell and tube heat exchanger.

Number of Tubes: The total number of tubes in the tube bundle, irrespective of the total number of passes.

Number of Tube Passes: The number of times the fluid passes through the tube bundle. In Figure 2 there are 2 tube passes.

Tube Diameter: This is the internal diameter of the exchanger tubes.

Diameter Unit: The unit of length used to define the tube diameter.

Tube Length: The length of the exchanger from tube sheet to tube sheet.

Length Unit: The unit of length used to define the tube length.

Tube Pitch Type: This entry refers to the layout of the tubes in the tube sheet. The value can be either "In-line" or "Staggered".

Tube Pitch Distance: This is the distance between the tubes in the tube sheet.

Figure 3: Tube pitch staggered arrangement.

Tube Outside Diameter: This is the outside diameter of the tube. Note, care should be taken when defining the tube outside diameter to ensure that the combined radius of adjacent tubes is less than the available tube pitch distance. If the tube outside diameter is defined as being greater than the available pitch distance (which is a physical impossibility), the calculated pressure loss will be displayed as zero. A design input must therefore be changed to obtain useful results.

Tube Size Unit: The unit of length used to define the tube pitch and tube outside diameter.

Number of Baffles: The number of baffle plates in the exchanger shell.

Distance between Baffles: The distance between each shell baffle.

Shell Inside Diameter: The inside diameter of the exchanger shell.

Distance/Diameter Unit: The unit of length used to define the shell inside diameter and baffle spacing.

Heat Loss Model: For a heat exchanger there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the heat exchanger is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the heat exchanger. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the heat exchanger.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 4 below:

Figure 4: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the heat exchanger. Into Network means that the temperature of the fluid is increased as the fluid flows through the heat exchanger.

Temperature Change: Use this row to specify the temperature change that occurs across the heat exchanger. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the heat exchanger as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 5.

Figure 5: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Note, when selecting the Fixed Heat Transfer model, take care to ensure the amount of heat energy, heat transfer direction and heat transfer units are set correctly. When we use this approach, the temperature of the fluid at the inlet of the element is known from upstream conditions and the software calculates the resultant fluid outlet temperature based on the fixed amount of heat transfer defined by the user.

During the solution routines, the software makes an initial estimate for flow through the various pipe nodes in a network and determines the resultant pressure and fluid physical properties throughout the system. The software begins with a low estimated flow rate through each sub-network in the system and through each iteration step, increases the flow rate until the model reaches convergence. In the specific case where a system experiences a very low flow rate through an element and a user has defined a high quantity of heat transfer Into the Network at this element, this high level of heat input may result in a corresponding high outlet temperature of the fluid. Depending on system operating conditions, the fluid phase state may change between the inlet and outlet of the element (perhaps from liquid to gas phase). If the fluid condition at the outlet of the element is for example, in gas phase instead of liquid phase, this can result in higher pressure losses and as such, through the subsequent iterations, the fluid may continue to solve in vapor phase. In the unlikely event of this rare phenomenon occurring, you can counteract the condition by swapping the heat transfer selection from Fixed Heat Transfer to Fixed Temperature Change. The fluid temperature at the inlet of the element will be known from upstream conditions and the resultant fluid outlet temperature calculated based on the temperature change defined by the user. The amount of heat energy transferred is also calculated and displayed in the results table for the element.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a heat exchanger. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the heat exchanger as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 6:

Pipes Input Editor10

Figure 6: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Heat Exchangers > Shell and Tube Exchanger >

Return to chapter overview

Result Table - Shell and Tube Exchanger

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a shell and tube exchanger.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the shell and tube exchanger. For all phase states the mass flow into and out of the shell and tube exchanger will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the shell and tube exchanger. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the shell and tube exchanger inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the shell and tube exchanger inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a shell and tube exchanger is not the static pressure, unless there is no flow.

In Static Temperature: The static temperature at the shell and tube exchanger inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the shell and tube exchanger inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the shell and tube exchanger outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the shell and tube exchanger outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest. The pressure inside a shell and tube exchanger is not the static pressure, unless there is no flow.

Out Static Temperature: The static temperature at the shell and tube exchanger outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the shell and tube exchanger outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > Heat Exchangers > Shell and Tube Exchanger >

Return to chapter overview

Result Chart - Shell and Tube Exchanger

For all phase states a resistance chart is available. This shows the shell and tube exchanger friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Method

Navigation: Components > Heat Exchangers > Shell and Tube Exchanger >

Return to chapter overview

Calculation Method - Shell and Tube Exchanger

The Tubeside pressure loss for flow through a shell and tube exchanger is composed of 3 contributing parts:

ΔP = Tube Friction Loss + Tube Entrance/Exit Loss + Nozzle Loss.

1) The tube friction loss is calculated assuming a tube roughness of 0.05mm, using the pipe equation calculation methods.

2) The tube entrance and exit losses are:

For laminar flow: KTubes := 3.25 NTubePasses - 1.5.

For turbulent flow: KTubes := 2.00 NTubePasses - 1.5.

The tube Entrance/Exit Loss is then: 0.5 G2 KTubes / ρ.

3) The nozzle losses are: 0.75 G2 / ρ.

The Shellside pressure loss is composed of 2 contributing parts:

1) The shell pressure loss is calculated according to the Delaware method.

ΔP = 0.5 fD G2 (NBaffleCount + 1) Dis / (ρ Dh).

The friction factor is determined from regression analysis of the charts provided in Serth [12]

2) The nozzle losses are calculated using: 0.75 G2 / ρ.

The variables used in the above equations are described below.

G is the mass flux.

KTubes is the K factor determined as noted above.

ρ is the fluid density.

fD is the friction factor (Darcy).

Dis is the inside shell diameter.

Dh is the hydraulic diameter.

NBaffleCount is the number of baffles.

NTubePasses is the number of tube side passes.

KTubes is the entrance/exit loss coefficient.


Plate Exchanger

A plate heat exchanger is composed of multiple, thin, slightly separated plates that have very large surface areas and fluid flow passages for heat transfer. This stacked-plate arrangement can be more effective, in a given space, than the shell and tube heat exchanger.


Data Entry

Navigation: Components > Heat Exchangers > Plate Exchanger >

Return to chapter overview

Data Entry - Plate Exchanger

The data entry requirement for a plate heat exchanger is shown below.

Figure 1: Data Entry for a plate heat exchanger.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For plate heat exchangers there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Pressure Loss Model: FluidFlow allows the user to choose from three available pressure loss models: 1) Standard Relationships, 2) Manufacturer Loss Data & 3) Fixed Value (Pressure Loss Constant).

Standard Relationships: Allows you to enter the geometric characteristics of the heat exchanger in which case, FluidFlow will solve the equations noted in Plate Exchanger | Calculation Method.

Manufacturer Loss Data: Exposes a series of rows on the Input inspector allowing you to enter sufficient data to define the pressure loss relationship as a function of flow (similar to the Kv node). When you define the flow, pressure loss and reference density for a heat exchanger, FluidFlow will automatically scale up or down depending on the actual flow experienced in the system.

Fixed Value: Exposes a series of rows on the Input inspector allowing you to define a constant pressure loss for the heat exchanger irrespective of the flow.

Number of Plates: User defined number of plates in the heat exchanger.

Plate Width: User defined width of plate. Note, the plate surface area contributes to the level of heat transfer. For a given plate height, the wider the plate, the larger the level of heat transferred.

Plate Height: User defined height of plate. Note, the plate surface area contributes to the level of heat transfer. For a given plate width, the longer the plate, the larger the level of heat transferred.

Width/Height Unit: The unit of length used to define the plate width/height.

Distance Between Plates: The length of the gap between the plates in which the fluid flows through.

Plate Distance Unit: The unit of length used to define the distance between plates.

Heat Loss Model: For a heat exchanger there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the heat exchanger is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows through the heat exchanger. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows through the heat exchanger.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows through the heat exchanger. Into Network means that the temperature of the fluid is increased as the fluid flows through the heat exchanger.

Temperature Change: Use this row to specify the temperature change that occurs across the heat exchanger. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the heat exchanger as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Note, when selecting the Fixed Heat Transfer model, take care to ensure the amount of heat energy, heat transfer direction and heat transfer units are set correctly. When we use this approach, the temperature of the fluid at the inlet of the element is known from upstream conditions and the software calculates the resultant fluid outlet temperature based on the fixed amount of heat transfer defined by the user.

During the solution routines, the software makes an initial estimate for flow through the various pipe nodes in a network and determines the resultant pressure and fluid physical properties throughout the system. The software begins with a low estimated flow rate through each sub-network in the system and through each iteration step, increases the flow rate until the model reaches convergence. In the specific case where a system experiences a very low flow rate through an element and a user has defined a high quantity of heat transfer Into the Network at this element, this high level of heat input may result in a corresponding high outlet temperature of the fluid. Depending on system operating conditions, the fluid phase state may change between the inlet and outlet of the element (perhaps from liquid to gas phase). If the fluid condition at the outlet of the element is for example, in gas phase instead of liquid phase, this can result in higher pressure losses and as such, through the subsequent iterations, the fluid may continue to solve in vapor phase. In the unlikely event of this rare phenomenon occurring, you can counteract the condition by swapping the heat transfer selection from Fixed Heat Transfer to Fixed Temperature Change. The fluid temperature at the inlet of the element will be known from upstream conditions and the resultant fluid outlet temperature calculated based on the temperature change defined by the user. The amount of heat energy transferred is also calculated and displayed in the results table for the element.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a heat exchanger. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the heat exchanger as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Heat Exchangers > Plate Exchanger >

Return to chapter overview

Result Table - Plate Exchanger

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a plate heat exchanger.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the plate heat exchanger. For all phase states the mass flow into and out of the plate heat exchanger will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the plate heat exchanger. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the plate heat exchanger inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the plate heat exchanger inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest.

In Static Temperature: The static temperature at the plate heat exchanger inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the plate heat exchanger inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the plate heat exchanger outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the plate heat exchanger outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the element outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest.

Out Static Temperature: The static temperature at the plate heat exchanger outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the plate heat exchanger outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > Heat Exchangers > Plate Exchanger >

Return to chapter overview

Result Chart - Plate Exchanger

For all phase states a resistance chart is available. This shows the plate heat exchanger friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Calculation Methods

Navigation: Components > Heat Exchangers > Plate Exchanger >

Return to chapter overview

Calculation Methods - Plate Exchanger

The calculation method used is based on the correlations and found in Chemical Engineers Handbook - Perry - 5th to 8th Edition [20], p 11-57.

The pressure loss is determined from the following equation:

ΔP = 2 fD G2 L / (ρ g Dh) + Nozzle Losses.

where:

G is the mass flux.

ρ is the fluid density.

L is the height/depth of a single plate corrugation.

Dh is the hydraulic diameter.

fD is the friction factor (Darcy).


Jacketed Vessel

A jacketed vessel is a container that is designed for controlling the temperature of its contents, by using a cooling or heating "jacket" around the vessel through which a cooling or heating fluid is circulated.


Data Entry

Navigation: Components > Heat Exchangers > Jacketed Vessel >

Return to chapter overview

Data Entry - Jacketed Vessel

The data entry requirement for a jacketed vessel is shown below.

Figure 1: Data Entry for a jacketed vessel.

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For jacketed vessels there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Heat Loss Model: For a jacketed vessel there are 3 possible entries: Ignore Heat Loss/Gain; Fixed Temperature Change; Fixed Transfer Rate. Selecting Ignore Heat Loss/Gain means that flow across the element is assumed to be adiabatic. Selecting Fixed Temperature Change allows you to specify a temperature change for the fluid as it flows across the element. Fixed Transfer Rate allows you to specify a fixed amount of heat to be either taken out of or added to the fluid as it flows across the element.

Selecting Fixed Temperature Change adds additional rows to the Input Editor as shown in Figure 2 below:

Figure 2: Additional input data required for Heat Loss Model set to Fixed Temperature Change.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows across the jacketed vessel. Into Network means that the temperature of the fluid is increased as the fluid flows across the element.

Temperature Change: Use this row to specify the temperature change that occurs across the jacketed vessel. The heat transfer direction setting determines if temperature is increased or decreased. FluidFlow adjusts fluid physical properties across the element as the temperature changes and also calculates the total amount of heat that needs to be transferred for the specified temperature change to occur. You should be aware that NO check is made to determine if this temperature change is possible, i.e., can this temperature change actually occur? You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a temperature that means a change of phase state you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Temperature Unit: The unit of temperature used to specify the temperature change.

Selecting Fixed Heat Transfer can be conceptualized as the converse of selecting Fixed temperature Change. As before additional rows appear in the Input Editor as shown in Figure 3.

Figure 3: Additional input data required for Heat Loss Model set to Fixed Transfer Rate.

Heat Transfer Direction: This value can either be: Out of Network; or Into Network. Out of Network means that heat is lost from the fluid. This has the effect of a temperature drop in the fluid as it flows across the element. Into Network means that the temperature of the fluid is increased as the fluid flows through the element.

Heat Transferred: Allows you to specify the quantity of heat transferred to (or from) a jacketed vessel. This row works in relation with the Heat Transfer Direction Setting to determine the direction of heat flow. FluidFlow adjusts fluid physical properties across the element as the heat transfer occurs and also calculates the total temperature change that will occur. You should be aware that NO check is made to determine if this heat transfer is possible. You can think of this mathematically as FluidFlow makes the calculation Heat Transferred = Mass Flow * Specific Heat * Temperature Change, but does not make the calculation Heat Transferred = Heat Transfer Coefficient * Heat Transfer Area * Log Mean Temperature Driving Force. If you specify a heat transferred quantity that means a change of phase state occurs, you will NOT obtain accurate results unless you have the two-phase module activated, instead you will get a warning and the friction loss calculation will be made according to the upstream phase state.

Heat Transfer Unit: The unit of heat transferred quantity that is used to specify the heat transferred to or from the fluid as it flows across the element.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Heat Exchangers > Jacketed Vessel >

Return to chapter overview

Result Table - Jacketed Vessel

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a jacketed vessel.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition that remains constant throughout the element. FluidFlow determines the composition because an individual component mass balance is carried out at each node.

Flow: This is the flow that FluidFlow has calculated will be flowing into the jacketed vessel. For all phase states the mass flow into and out of the vessel will be identical. For incompressible fluids the inlet and exit flows expressed in volumetric units will be identical, but this will not be the case if the temperature changes across the vessel. For gas flows this represents the actual flow at the element inlet. For two phase flow of constant quality and temperature, volumetric flow will be identical, for changing quality or changing temperature volumetric inlet and outlet flows will be different.

Heat Transferred: If the Heat Loss Model is not equal to "Ignore Heat Loss/Gain", then an additional row will appear in the results table showing the amount of heat that has been transferred.

In Stagnation Pressure: The stagnation pressure at the jacketed vessel inlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

In Stag. Temperature: This is the stagnation temperature at the vessel inlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

In Static Pressure: The static pressure at the element inlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest.

In Static Temperature: The static temperature at the vessel inlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T1 = T10 - 0.5v12 / Cp

In Velocity: The velocity at the vessel inlet. For gases, velocity increases as the fluid moves across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease as a fluid flows across an element, for example cooling of a liquid.

Joule–Thomson Coefficient: The Joule–Thomson effect describes the increase or decrease in the temperature of a gas when allowed to expand. The change in temperature (T) with a decrease of pressure (P) at constant enthalpy (H) is referred to as the Joule–Thomson coefficient (μJT). FluidFlow uses the Peng Robinson EOS to evaluate the Joule–Thomson coefficient which is expressed as:

μJT = (∂T/∂P)H

The value of μJT is typically expressed in °C/bar and is dependent on the physical properties of the gas, as well as the temperature and pressure of the gas before expansion.

Out Stagnation Pressure: The stagnation pressure at the vessel outlet. This is the sum of kinetic and pressure energies (static pressure + velocity pressure). Stagnation pressure is the pressure a flowing fluid would rise to if brought isentropically to rest, converting its kinetic energy to enthalpy.

Out Stag. Temperature: This is the stagnation temperature at the vessel outlet. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Out Static Pressure: The static pressure at the vessel outlet. This is the pressure that acts equally in all directions at the point in the fluid and is present irrespective if the fluid is flowing or if the fluid is at rest.

Out Static Temperature: The static temperature at the vessel outlet. Static temperature is related to stagnation temperature (ignoring work, heat exchange, and potential energy) by the equation

T2 = T20 - 0.5v22 / Cp

Out Velocity: The velocity at the vessel outlet. For gases, velocity increases as the fluid flows across the element. This can also occur with two phase flow where flashing exists, or for an incompressible fluid where the temperature rises. Velocity can also decrease, for example cooling of a liquid.

Total Pressure Loss: This is the calculated total pressure loss. Total pressure loss is not always the same as frictional loss, for example, when a temperature or velocity change occurs. In FluidFlow total pressure loss is defined (from the Energy Equation) as

ΔP = (z1ρ1g + p1 + 0.5ρ1v12) - (z2ρ2g + p2 + 0.5ρ2v22)


Result Chart

Navigation: Components > Heat Exchangers > Jacketed Vessel >

Return to chapter overview

Result Chart - Jacketed Vessel

For all phase states a resistance chart is available. This shows the plate heat exchanger friction loss at various flows.

Figure 1: Friction Loss against flow for a Newtonian Fluid.

The shape of the resistance curve may change with phase state, the above chart is for a Newtonian fluid.


Knock Out Pot

A knock-out pot may also be referred to as a flash drum, knock-out drum, vapor–liquid separator, compressor suction drum or compressor inlet drum. A knock-out pot is a device used in several industrial applications to separate a vapor–liquid mixture.

For the common variety, gravity is utilized in a vertical vessel to cause the liquid to settle to the bottom of the vessel, where it is withdrawn. This is the approach adopted within FluidFlow.


Data Entry

Navigation: Components > Heat Exchangers > Knock Out Pot >

Return to chapter overview

Data Entry - Knock Out Pot

The data entry requirement for a knock-out pot is shown below.

Figure 1: Data Entry for a Knock-Out Pot .

Unique Name: Allows you to enter a descriptive name for this element. It is not necessary to add any data to this field. If you do enter data here you can use this later to sort via the Lists.

Status: For knock-out pots there are 3 possible status values: On, Off, or Ignore Pressure Loss. On is the normal position and tells the application that this node is open and to calculate the flow out of the element. Off means that this component is closed to flow. You can close resistances to isolate part of a network. Ignore Pressure Loss means that the node is Open but the pressure loss calculation is skipped.

Elevation: This is the height above a selected datum. You can select any datum (base line with elevation = 0) that is convenient for you. When you construct any network you need to decide on a datum. This can typically be ground level, or the centerline of a pump. In flow calculations absolute elevations are not important, only the relative elevations of the nodes are important. The elevation that you enter in this row is the elevation of the connector measured from the datum.

Elevation Unit: The unit of length that defines the elevation that you have entered into the elevation row.

Pressure Model: The options for this entry are: 1) Auto Calculate and 2) Fixed Pressure. If you accept the default selection (Auto Calculate), the software will automatically determine the pressure at the separator. This also represents the pressure at the outlet of the two phase pipe serving the separator. Note, the continuity equations (mass, energy & momentum) are solved on this basis.

If you select Fixed Pressure for the pressure model, additional data entry is required as per Figure 2.

Figure 2: Data Entry for Fixed Pressure - Pressure Model.

Operating Pressure: This is the design pressure defined for the separator by the designer. This also represents the pressure at the outlet of the two phase pipe serving the separator. Note, the continuity equations (mass, energy & momentum) are solved on this basis.

Pressure Unit: This is the pressure unit that you use when defining the operating pressure for the separator.

Flash Calculation: FluidFlow allows the user to define isenthalpic flashing (constant enthalpy) for the knock-out pot.

Liquid Out (RED): The assigned liquid outlet for the knock-out pot. This is defined in FluidFlow by the " Red Dot". Refer to Fig. 3 below for an illustration of the liquid outlet.

Vapor Out (YELLOW): The assigned vapor outlet for the knock-out pot. This is defined in FluidFlow by the " Yellow Dot". Refer to Fig. 3 below for an illustration of the liquid outlet.

Figure 3: Knock-Out Pot Pipe Connections.

User-Defined Fields: Allows you to add "fields" to the element, for use in, for example, scripting or reporting. Clicking on the input will display the User-Defined Fields dialog to add/edit/delete fields.

Properties On Flowsheet: This value can either be: Show; or Hide. The Properties on Flowsheet row is available for all components. This means that you can decide what properties you wish to show on the flowsheet and for which components. If Show is selected then additional rows appear in the Input Editor, which allow you to set text font, color, size, text position and the properties you wish to display. The additional rows are shown in Figure 4:

Pipes Input Editor10

Figure 4: Additional input data required for showing properties on the flowsheet.

Alignment: This row controls the alignment of the component properties on-screen. Possible values are: Top; Bottom; Left; or Right. Alignment of the displayed text is relative to the center of the component.

Font: Text font properties can be set from the standard windows font dialog.

Properties: Shows/hides Input and Result fields for display of properties on flowsheet. This allows for visibility of any input or calculated/result data to be controlled for each component. Individual property setting is made via the Select Element Properties dialog.


Result Table

Navigation: Components > Heat Exchangers > Knock Out Pot >

Return to chapter overview

Result Table - Knock Out Pot

The available results that are listed in the table vary depending upon the fluid phase state and upon the visible properties that you have selected. Figure 1 shows all of the available results for a liquid phase state. Figure 2 shows the normal or default rows. You can choose the rows you wish to display in the results table via the Set Visible Results Dialog.

Figure 1: Available results for a Knock-Out Pot.

Only descriptions for the default results are shown in this section. If you wish to see the definition for other values click here.

-- ID -- (aka User Number): All flowsheet elements have a unique number that is assigned by FluidFlow. It is not possible for the user to change this number because it is used as a unique identifier by the scripting module. Node numbering starts from 1, incrementing upwards, and pipe numbering starts from -1, decrementing downwards.

Composition Mass %: This is the fluid mass composition. FluidFlow determines the composition of the fluid at a knock-out pot, based on a component mass balance.

Density: The fluid density at the knock-out pot. Density depends on temperature and pressure of the fluid.

Stagnation Pressure: The average stagnation pressure at the knock-out pot. This is the sum of kinetic and pressure energies (static pressure + velocity pressure).

Temperature: This is the stagnation temperature at the knock-out pot. The stagnation temperature is the temperature that the fluid would reach if it were brought to rest isentropically, converting its kinetic energy to enthalpy.

Viscosity: The fluid dynamic viscosity at the knock-out pot. Viscosity is a measure of the resistance of the fluid to deformation. For Non-Newtonian fluids viscosity depends on shear rate as well as fluid temperature and pressure.


Result Chart

Navigation: Components > Heat Exchangers > Knock Out Pot >

Return to chapter overview

Result Chart - Knock Out Pot

Charts are not available for Knock-Out Pots.


Calculation Methods

Navigation: Components > Heat Exchangers > Knock Out Pot >

Return to chapter overview

Calculation Methods - Knock Out Pot

An isenthalpic flash calculation is carried out for the Knock Out Pot.


Navigation: »No topics above this level«

Return to chapter overview

Calculations


Gas Calculations

(Unless otherwise stated use mass flow rates in kg/hr and absolute pressures in Pa and show temperature to two decimal places)

The three conservation laws discussed in the calculation methods section apply equally to compressible as well as incompressible flows. However, a more rigorous form of the Conservation of Energy law must be applied if the fluid is a gas and the momentum equation is only applicable in a differential form.

First, let's consider a simple case of flow of air down a single pipe. Develop the system shown in Figure 1 below.

Figure 1.

As we can see the velocity increases, the density and temperature decreases. What are the implications of the changing conditions as the fluid flows down the pipe?

The implications are that the simplifying assumptions we used to derive the energy and momentum equations for a liquid, i.e., Bernoulli and Darcy Weisbach are not justified if we wish maximum accuracy in the simulation. If we use the same simplifying approach for compressible flow, we will obtain less accurate results, with the accuracy decreasing as temperature, velocity and density changes become more significant.

So if we can't use Bernoulli and Darcy equations what do we do?

There are 2 different approaches to overcoming this increasingly complex problem:

1.The first approach is to obtain an analytical solution to the fundamental equations by making simplifying assumptions. Nearly all text books follow this approach and usually make the assumptions of Ideal Gas Laws (or use simple equations of state) and assume adiabatic flow. Using a simple gas law provides the relationship between pressure, temperature and density and so explicit analytical equations can be derived. Even so, we cannot apply these equations to inlet conditions and ignore the physical property changes as the fluid flows down the pipe. So we must split the pipe into fixed length segments and march down the pipe solving for downstream conditions as we go.

2.We accept that it is not possible to obtain a complete analytical solution without making simplifying assumptions. We also accept that we need an incremental (marching) approach to solve for the changing conditions as we flow down the pipe. If we use a more complex equation of state we do not need to make simplifying assumptions and we can use this together with differential forms of the continuity and momentum equation which we can solve numerically.

There are 2 drawbacks to the first approach, using simplifying assumptions and determining the pipe length to use. FluidFlow uses the second approach. This means that we can rigorously calculate adiabatic, isothermal or flow with heat transfer. It allows for the increase in kinetic energy as the gas accelerates with pressure drop. It also allows the changing non-ideal behavior of the gas as it flows along the pipe by using a more complex equation of state to calculate the thermodynamic properties of the gas, and thereby use actual enthalpy and density at each increment. For a complete explanation of the method used see calculation methods. The advantage of this approach is to obtain the most accurate solution possible.

Leaving the complexities of the theory for now, we will focus on the practical implications of compressible flow. If we go back to the initial example, one implication that we should understand is that if we increase the supply pressure the gas will keep accelerating until we reach the maximum limit, which is the speed of sound. It is not possible to obtain a velocity of greater than the speed of sound in a pipe system.

So using the same example, increase the supply pressure and watch what happens.

Initial Pressure P1in atm | Downstream Velocity V2 in m/s | Downstream static temperature in °C | Downstream static pressure in Pa
1.1 | 66 | 12.8 | 98682
1.4 | 145 | 4.4 | 89482
1.6 | 188 | -2.8 | 82370
1.8 | 229 | -11.4 | 74407
2.0 | 269 | -21.5 | 65692
2.1 | 315 | -34.8 | 59126
2.5 | 315 | -34.7 | 78954

You should note the following points; the reasoning should become clear if you refer to the energy equation, shown below.

In this system at pressures 2.1 atm and above the exit velocity reaches a maximum. This is called sonic velocity. Sonic velocity is a thermophysical property and is a function of temperature and pressure, note that the sonic velocity decreases slightly as we increase the supply pressure. If you watch the static temperature at the outlet you should also note that this decreases as we increase the supply pressure. The mass flow keeps increasing as we increase the supply pressure, as we would expect, but perhaps not by the amount we would expect. The other important observation you should note is that after we reach sonic velocity what happens to the downstream pressure? It no longer is at the specified stagnation value of 1 atm. Why?

The energy equation must always hold true and so if the velocity has reached a maximum we cannot increase the kinetic energy any further and so the static pressure, p2 must increase. Consider the energy equation below and you can see why this happens.

ΔPtot = (ρ1U1+ z1ρ1g + p1 + 0.5N1ρ1v12) - (ρ2U2+ z2ρ2g + p2 + 0.5N2ρ2v22) ρ1/ρ2

For reference the corresponding energy terms are (internal energy + potential energy + pressure energy + kinetic energy).

When sonic velocity is reached at the end of a pipeline this is often referred to as choking. Sonic choking can also occur at other positions in gas networks and we will consider this later.

There are a few more terms that we should be aware of which are useful when considering gas flow problems.

Mach No is defined as the ratio of actual velocity to sonic velocity. You should note that once Mach No reaches above about 0.8 any small increase in upstream pressure has a very significant effect on downstream velocity and is likely to result in a downstream Mach 1.

Stagnation Conditions: We have already illustrated that the pressure and temperature of a gas falls as it flows along a pipe (assuming no heat transfer input). This is due to the combined effects of friction and the need to maintain an energy balance. Friction reduces pressure, causing the velocity to increase. The increased velocity means that kinetic energy has increased and so the temperature must be reduced to maintain the energy balance. As the lower temperature tends to increase the density, it will tend to reduce the increase in velocity. These effects make it difficult to visualize the pressure change brought about by friction and how much was changed by the need to maintain the energy balance. The two effects can be separated by using the concept of stagnation conditions. If at any point in the pipe the gas was brought to rest isentropically then the kinetic energy would be converted back to enthalpy and the resulting conditions would be the stagnation pressure and temperature. This means that we can see the effects of pressure loss with the energy balance removed if we consider stagnation pressure between any two points.

To reinforce the concept of static and stagnation pressures and their effects on flow and conceptualisation, take a look at the following example, which is a very simple steam distribution network with virtually no resistances. (Saved as "[FluidFlow3 folder]\QA CompressibleFlow\Distribution\Steam Distribution Question.ff3").

Figure 2: Example steam distribution network.

In this system we are using 4" pipes for the headers and 2" pipes for the laterals (pipe node -13 & -14). After the first pipe take off (-13) what happens to the velocity in the header downstream of the take off (5) ?

It reduces which means that because of the energy balance the static pressure must increase. This is called pressure recovery and often occurs in distribution systems. Friction tends to reduce this pressure, but in this case the effect of velocity is greater. Take a look at the static pressure at the inlet of the two laterals (pipes -13 and -14) and you should see that this is greater in the most remote pipe. In effect this means a greater pressure driving force is available in the most remote pipe and hence the greater flow. Don't believe this?

Change the header pipe to be 2", the same size at the laterals, and see what happens. In this case the decrease in velocity downstream of the first branch still occurs but the effect of increased friction more than cancels out this effect and so we get more flow through the first pipe.

The design of even flow distribution systems for gases can be problematic because of the pressure recovery effect, sizing of headers is often critical.


Gas Volume Definitions

Generally the density of a gas flowing in any piping system is not constant. This means that it is not meaningful to specify gas flowrate in actual volume flow units without providing the temperature and pressure base at which the actual volume is referred to. It is common practice to refer to gas volume flow against a specified basis.

There are many bases available for referencing gas volumes. Today the most universally accepted reference is metric Standard Conditions (STP) which are defined by ISO 5024 at 15°C and 101325 Pascals. The American Gas Association and the International Gas Union both support the use of this reference.

Normal conditions (NTP) defined as 0°C and 101325 Pascals are still used throughout Europe.

FluidFlow can use either basis.

The FluidFlow gas calculation routines are rigorous calculations which allow for the increase in kinetic energy as gas accelerates with pressure loss. The calculations allow for the changing non-ideal behavior of the gas as it flows by using an equation of state. There are three equations of state available (Benedict Webb Rubin with HS modifications; Lee Kesler; and Peng Robinson), it is also possible to select the most appropriate EOS for each physical property. Using the EOS the gas thermophysical properties such as enthalpy and density are calculated as the gas accelerates. An analytical solution to the EOS, energy and momentum equations is not possible and FluidFlow solves these equations numerically. These intensive calculations mean a longer solution time than that experienced in earlier versions of the software. FluidFlow makes no assumptions of gas ideality or adiabatic flowing conditions the most accurate solution for real gases is made.

Sonic Velocity - This is the maximum velocity a gas can reach in a pipe of constant cross-section. The sonic velocity is a thermophysical property and is a function of pressure and temperature. As a gas accelerates the density, pressure and temperature decrease which makes the accurate estimation of sonic velocity difficult. FluidFlow does not use a constant sonic velocity in its algorithms, but estimates this value for each density increment as Sqrt(pressure change / density change).

The accurate estimation of sonic velocity is important because it determines where sonic choking occurs.


Sonic Choking in Gas Networks

Sonic velocity CANNOT be attained by a gas as it flows through a pipe of constant cross-sectional area.

Sonic choking occurs when the flowing gas experiences a local velocity equal to the sonic velocity of the gas at that temperature and pressure. Within any piping system sonic choking can only occur at locations where the gas attempts to accelerate beyond the local sonic velocity. This can only occur at locations where the flow path cross sectional area experiences a change. Examples of these types of locations are:

§Endpoint choking occurs as flow exits a pipe into a vessel or to atmosphere. FluidFlow automatically detects this condition and limits mass flow accordingly.

§Sonic choking can also occur through any of the Size Change components, for example a nozzle, expansion or orifice plate. FluidFlow detects this condition and again limits mass flow accordingly.


Example Designs

You should familiarize yourself with the many examples found in the Quality Assurance Folder. For gases the main section is: "[FluidFlow3 folder]\QA Compressible Flow".

There is also a simple example in the Quick Start Guide, which is a worthwhile exercise. For completeness a further two example designs are considered here.

Example 1: Air Flow with Pipe Sizing and Fan Selection.

The layout of a stainless steel, Schedule 5S, pipe system is already decided and is shown in Figure 1 below. It is required to select the appropriate pipe sizes and fan to deliver approximately 1750 kg/hr of air to each outlet.

Figure 1: Air Distribution System - Layout

The topics covered in this example design are:

§Efficient sizing of pipes.

§The sizing and selection of a fan.

Step 1:

In this first step we build the model and make a first stab at appropriate pipe sizes by setting them all 6" stainless steel throughout (except for the suction line which we make 12"). We simulate the fan location by two {Known or Assigned Flow} elements, with the desired flowrate set OUT of the suction pipework and INTO the delivery pipework. The difference in the stagnation pressure between these two elements will eventually determine the required fan pressure.

Solve the model and view the flow conditions in each pipe. Clearly we have not achieved anything like the approximate flows required at each outlet. For instance the flow to the first outlet is nearly over 2,000 kg/hr instead of 1,750 kg/hr.

A variety of flow control measures could be adopted here such as:

§Flow control valves in each line.

§Orifice plates in each line.

However, since the outlet flow requirements are only approximate it might be more economical to use pipe sizing for flow balancing.

FluidFlow provides guidance on pipe sizing via the Results Inspector. The image below shows the Inspector for the 40 M long pipe. Note that FluidFlow displays the selected pipe size (the internal diameter) and the Exact Economic Size. It can be seen that there is a considerable difference in this case so a change of pipe diameter might be suitable.

Figure 2: Air Distribution System – Economic Pipe Sizing.

Step 2:

Change the 40m long pipe to an 8" line and see how this brings us closer to the economic size, but does not assist with flow balancing. However some further pipe size changes improves the flow balance.

Change the pipes sizes to those shown in the image below and also display the flow rates and stagnation pressures at the fan location.

Figure 3: Air Distribution System – Pipe Sizing.

Step 3:

The flow rates now look reasonable and we also have a performance specification for the fan. So replace the two {Known or Assigned Flow} elements with a fan element, model as shown. A suitable fan is the Air Control Industries Radial Blower RB200.

Figure 4: Air Distribution System – Fan Selection Part 1.

Note, when we solve this system based on the operating speed of 2850 RPM and impeller diameter of 348mm, we achieve a reasonable flow distribution however, the flow rate to outlet boundary node 4 (1,739.8 kg/h) is slightly below the design value of 1,750 kg/h. We can therefore consider increasing the impeller diameter to achieve the desired flow rate. Try an impeller diameter of 350mm.

Generally, you would expect a temperature rise across a fan as it compresses the flowing gas. Using the Input Inspector Heat Loss Model field you can include the temperature rise in one of three ways:

1.Fixed temperature change.

2.Fixed heat transfer rate.

3.Automatically calculated by FluidFlow using an adiabatic compression.

Step 4:

In Step 3 we used the difference in stagnation pressures to determine the required duty point of the fan. An alternative approach would be to activate the "Automatically Size" option for fans and set the sizing model to "Size for Flow" (Refer to: Components | Fans and Compressors | Data Entry). With this option we just specify the desired flow rate and the resulting head is calculated.

This then offers the possibility of testing different flow balancing techniques such as flow controllers, orifice plates, economic pipe sizing, etc., whilst maintaining a constant input flow rate, and then judging selections against the calculated fan head.

Figure 5: Air Distribution System – Fan Selection Part 2.

Example 2: Choked Flow.

The image below represents the existing gas supply to two power stations, PS1 and PS2, from a natural gas supply main. A new power station is proposed (Newgen) which will place additional demands on the supply system.

Figure 1: Natural Gas Supply System.

A minimum of 29.0 barg is required at each take off. Using the layout of pipes shown and the data below, calculate the minimum pressure required in the gas supply main to achieve this.

A sonic nozzle is present to restrict flow should the pipe fracture downstream of the transfer station. Simulate this with an inline nozzle, size 100mm.

For the transfer station itself, assume a constant pressure drop of 0.15 bar.

Data:

Main pipeline – 14" Schedule 10.

Off-take pipes – 6" Schedule 40.

Gas mixture – 90% methane, 7% ethane, 3% butane.

Demands: PS 1 & 2 = 10 kg/s, Newgen = 15 kg/s.

Hints:

§Review the General Resistances\User Defined Generic component equation and see how you use this to simulate a constant pressure drop.

Question?

If the pipe fails completely downstream of the Transfer Station, what is the restricted flow through the sonic nozzle?

§Copy and paste the model to another flowsheet.

§Delete all pipes downstream of the elbows.

§Change the elbow icon to an outlet.

§Calculate.

§Compare the escaping flow rate with the sonic nozzle set ON and then with the sonic nozzle set IGNORE PRESSURE LOSS.


Two Phase Flow Calculations

The two phase flow calculation module allows for two phase liquid-gas calculations to be accomplished. Two phase flow occurs in many industrial processes. Examples are petroleum, chemical, nuclear, refrigeration, space and geothermal industries.

With this module it is possible to analyze systems where the vapor quality changes with pipe position as well as two phase flow where the vapor quality is fixed.

Two Phase flow is many times more complex than liquid or gas flow and it is unlikely FluidFlow will produce answers as accurate as for single phase calculations.


Modelling Approach

There are 3 basic approaches to modelling two phase flow in piping systems:

1.The experimental (empirical) approach. In this approach correlations are developed from experiments. Using dimensional analysis allows a universal solution to be obtained. These methods can be applied with confidence over the range of conditions obtained, similar to the experiments.

2.The exact solution (rigorous) approach. This approach requires the solution of the energy and momentum equations with the proper boundary conditions. As a practical solution this approach is too complex except in the most simplest of cases.

3.The numerical approach. In this approach the conservation laws are solved numerically. Problems with solution closure occur, and codes tend to be large and time-consuming of processor time.

FluidFlow uses a modelling approach which is a hybrid of the empirical and rigorous approaches. By this we mean that we use well known empirical correlations and apply them to a differential pipe length. This is similar to the approach used for gas calculations, however in the case of two phase flow a pressure decrement (rather than a density decrement) is taken and the empirical relationships are applied over the segment length. This approach allows for a flash calculation, liquid holdup and the flow regime to be determined for each segment and acknowledges that the pressure loss per unit length changes as the fluid flows down the pipe. See calculation methods for a more detailed description.

There have been many attempts to classify and define flow regimes in two phase flow. The advantage of this approach is that the friction loss relationships can be developed as a function of the flow regime. This is the basis of mechanistic modelling.

The available pressure loss relationships that you can use in FluidFlow are:

§Friedel: This method is based on the paper published by Friedel [21] and utilizes a two phase multiplier to the liquid pressure loss calculation. This correlation uses different equations for horizontal and vertical pipes.

§Chisholm: Proposed an extensive empirical method (1973), which also uses a two phase multiplier. This is one of the more simplistic two-phase correlations available.

§Lockhart Martinelli: Proposed a separated flow model, but this should only be applied to horizontal pipe flow. This is also one of the more simplistic two-phase correlations and dates back to the 1970s.

Comparison of the above 3 methods to a recent two phase database was made by Whalley who made the following recommendations:

(μL/μG) < 1000 and a mass flux of < 2000 kg/m2s use the Friedel method.

(μL/μG) > 1000 and a mass flux of > 100 kg/m2s use the Chisholm method.

(μL/μG) > 1000 and a mass flux of < 100 kg/m2s use the Lockhart Martinelli method.

If you select the Whalley Criteria in the Calculation Options dialog, FluidFlow will select the appropriate method for you.

More recently Muller Steinhagen and Heck (2000) made an updated comparison and recommended the MSH correlation as a better approach, particularly for refrigerants and single component fluids. This method loses accuracy at high vapor quality.

One of the first approaches based on flow regime was made by Beggs Brill. This correlation is applicable to all pipe orientations. The original method (1973) was extended and FluidFlow uses the extended method. You should probably not use this method for vertical upflow because it underpredicts pressure loss.

Drift Flux modelling is accommodated in FluidFlow by using a new correlation published in 2007 [22]. This modelling approach is best suited for vertical and inclined pipes.


Example Calculations

You are encouraged to look at all of the Two Phase examples used in the Quality Assurance tests. These can be found in the "[FluidFlow3 folder]\QA 2-Phase Flow" folder.

Example 1. An air water two phase model. Constant quality.

Two phase can be specified at a boundary, for a single fluid, or we can mix gas and liquid streams in order to make a two phase mixture. We will use the second method in this example.

Make a model as shown below:

The model shows two known flows (one fluid air(2), one fluid water(1)) combining and being heated via a plate exchanger, then flowing to a separation vessel (5). The red dot on the Knock Out Pot (separator) represents the liquid outlet and the yellow dot represents the vapor outlet. You can load this example directly from the "[FluidFlow3 folder]\QA 2-Phase Flow\Separating\Knock Out Pot with Constant Quality.ff3" or better enter the following data yourself.

Node 1 (water inlet) conditions are:

Node 2 (air inlet) conditions are:

Node 6 (the plate exchanger) conditions are:

Pipe information is: Your node numbers and pipe numbers may be different, this just depends on the connection order.

Pipes (-1 and -2 connecting the known flows to the connector) 0.5 m in length 2" sch 40 pipe.

Pipe (-6 from the connector to the plate exchanger) 60 m in length and an inside diameter of 50.8 mm

Pipe (-3 connecting the plate exchanger to the KO Pot) 60m in length and an inside diameter of 50.8 mm.

Pipe (-4 vapor outlet from KO Pot) 5m and 6" sch 40 pipe.

Pipes (-5 and -7 liquid outlet from the KO Pot) 10m and 2" sch 40 pipe.

Before you make the calculation, change the two phase correlation that is to be used via the Calculation Option Dialog (F2 key or via the menu Options | Calculation) to use the Beggs Brill method.

Overview of Results:

This is an example of two phase flow with constant quality. This means that the vapor mass fraction is constant and there is no mass transfer between the phases. It does not mean that the pressure loss per unit length is constant or that the velocity between the two phases is constant. In the first pipe section after mixing (pipe -6) you can see that the gas superficial velocity increases from the start to the end of pipe -6. For 60m of pipe -6, the total pressure loss is 146790 Pa, but the friction loss is 145349 Pa. Since the pipe is horizontal the difference is the acceleration loss. After the exchanger the mixture has experienced a temperature increase of 30 °C. The total pressure loss in the pipe after the exchanger (-3) is 208628 Pa (pipe -3 is identical in length and diameter to -6). This is because gas volume and velocity as well as other fluid properties have changed with the increase in temperature in the outlet pipe. You can get a feel for the differences by displaying the Beggs Brill flow pattern map. To do this click on the pipe, then click on the chart tab in the data palette and then use the Settings drop down to select the flow pattern map.

As a final exercise before leaving this example, try another two phase correlation. For example MSH and note the differences in pressure losses (total system losses have increased by about 9%).

If you use the Whalley criteria, FluidFlow selects the Friedel method and in this case total system pressure losses reduce by 17.5%.

For this example MSH, Whalley and Beggs Brill are probably the most appropriate methods. You can see that the total system pressure loss estimation can vary considerably.

Example 2. A Refrigerant system with changing quality.

You can open the file "[FluidFlow3 folder]\QA 2-Phase Flow\Condensing\Elevation Test with change in quality across exchanger due to heat addition.ff3".

In this example we have a single fluid, R-152a flowing through the system shown above, from a known pressure (node 1) at 1.16 atm and the fluid is at its saturation temperature of -19.9°C.

We have specified a vapor quality (vapor mass fraction of 0.18) at the inlet and we are carrying out the calculation using the Whalley criteria.

Overview of Results:

This is an example of two phase flow with changing quality. This means that the vapor mass fraction is not constant and there is mass transfer between the phases. You can see this in the results of all flowsheet elements, examine the vapor quality entering and leaving each node or pipe, and you will see that quality is increasing as we flow through the system. This is because the pressure falls as the fluid flows down a pipe (or across a bend) and so some of the liquid boils to form more vapor. This is called flashing, and FluidFlow assumes that instantaneous isenthalpic flashing occurs. You should also notice that velocities are increasing and that mixture densities are decreasing.

At the heat exchanger we are adding some 30,000 Watts of heat and this has the effect of vaporizing additional liquid. Across this element the quality increases from 0.19623 to 0.4578.

As an exercise, change the heat loss model at the exchanger from "Fixed Transfer Rate" to "Ignore Heat Loss". What do you expect to happen to the vapor quality leaving the exchanger? It should decrease. You should also note that system flow will increase because of this.


Non-Newtonian Calculations

The Slurry module allows you simulate the flow of two types of non-Newtonian liquids:

·non-Newtonian / non-settling

·settling slurries with a Newtonian carrier fluid

Foods, wastewater and pharmaceutical flows are generally non-Newtonian / non-settling. Mining flows may also be non-Newtonian/non-settling but also include settling slurries, i.e., a Newtonian carrier fluid or vehicle (usually water) with a solids component which may be in full or partial suspension.

The Slurry module provides a range of pipe flow friction loss models for simulating these types of flow.


Non-Newtonian Liquids

Non-Newtonian / non-settling liquids

Non-Newtonian / non-settling liquids may be broadly divided into three types:

§Bingham plastics which exhibit a linear relationship between shear stress and rate of strain but which do not exhibit a zero intercept at zero strain rate, i.e., they have yield stress.

§Pseudo-plastic which exhibit a non-linear stress/strain relationship with zero intercept on the stress/strain relationship.

§Yield pseudo-plastic which exhibit a non-linear stress/strain relationship but which do not exhibit a zero intercept at zero strain rate, i.e., they have yield stress.

Pipe friction loss models for these type flows are well established - Bingham, power-law for pseudo-plastic and Herschel-Bulkley for yield pseudo-plastic. Each of these friction loss modules is available in the Slurry module. Shear rate vs. Stress and the consequential Shear rate vs. Viscosity for each non-settling type is shown below:

Settling slurries comprise a Newtonian "carrier fluid" conveying solid particles. Friction loss is a complex function of:

§Carrier fluid characteristics

§Solids characteristics

§Flow rate

§Pipe inclination

Pipe friction loss models are based on empirical data. The Slurry module allows for use of any one of five pressure loss models:

§Durand

§Wasp

§Wilson, Addie, Sellgren and Clift (WASC) - This is the default calculation method.

§Sellgren, Wilson Four-Component Model

§Liu Dezhong


Calculation Options Dialog

Non-Newtonian & Slurry

If the Slurry module is active then a new tabbed page is added to the default Calculations Options Dialog (F2 key).

Calculations Options Dialog Slurry

Correlation options from the drop down boxes are as follows:

Fluid Type | Correlation Options
Power Law | Darby
Bingham Plastic | Darby
Yield Pseudoplastic | Darby; Chilton Stainsby


Settling Slurries Calculations

Navigation: Calculations >

Return to chapter overview

Settling Slurries

Settling slurries comprise a carrier fluid (sometimes referred to as the vehicle) conveying solid particles.

The accepted approach in determining the friction loss of the slurry mixture is to calculate the 'solids effect' - the excess friction loss caused by the solids content over that for an equivalent flow of the carrier fluid. A number of interrelated factors influence the solids effect. The three main factors are the solids' particle characteristics, the settling velocity of the particles and the velocity of flow of the mixture, but pipe inclination is also important.

If all or a fraction of the solids are relatively fine, they can be held in suspension and create a 'homogeneous' carrier fluid, the friction characteristics of which needs to be determined. In these circumstances the carrier fluid friction loss then becomes proportional to that of the pure fluid. This type of slurry flow represents one extreme of slurry flow. At the other extreme, with coarser particles moving only as a contact load, (as a sliding bed with none in suspension) the solids effect is considerable and the pressure loss much greater than for the carrier fluid alone. This is referred to as fully stratified flow.

In between these extremes are two regimes, pseudo-homogeneous and heterogeneous. Pseudo-homogeneous flow contains particles between about 0.4mm and 1.5mm and displays a variation of solids concentration with height across the pipe diameter, depending on velocity. Again the pressure drop is proportional to that obtained for an equal discharge of carrier fluid. Heterogenous flow - particle size around 1.5mm to 4mm and lower velocities - exhibits a greater non-uniformity of solids concentration. The solids are supported partly by fluid suspension and partly by inter-particle contact. The settling velocity of the solid particles and the percent by volume in the mixture are important factors.

Real-life slurries may contain a wide particle size distribution and consequently all four regimes of flow - a homogeneous carrier fluid, and pseudo-homogeneous, heterogenous and fully stratified fractions - may be present at the same time. The technique is to estimate the excess pressure drop separately for each of the four regimes and then sum them for the total.

Design methods are highly empirical. Eight approaches are available with the Slurry module:

§Durand

§Wasp

§Wilson, Addie, Sellgren and Clift (WASC)

§Sellgren, Wilson Four-Component Model

§Liu Dezhong

§Vsm

§V50

§4CM


Factors affecting Friction Loss

Settling slurries comprise a Newtonian "carrier fluid" conveying solid particles. The carrier fluid is sometimes called the 'vehicle'. Friction loss is a complex function of:

§Carrier fluid characteristics

§Flowrate

§Solids characteristics

§Pipe inclination

Carrier fluid characteristics

The carrier fluid is often water but may be another pure Newtonian liquid. However, if there is a fraction of fines in the solids, say of size less than 0.4mm, then these fines may form a homogeneous non-settling mixture with the carrier fluid. The carrier fluid friction loss then becomes proportional to that of the pure fluid.

Flowrate

At known flow input boundaries flowrate may be defined as:

§Desired solids (mass) flowrate

§Carrier fluid flowrate

§Mixture (total) flowrate

Solids characteristics

The solids characteristics comprise:

§Density

§Bulk density

§Specific heat

§Thermal conductivity

§Shape factor

§Sliding bed coefficient

§Particle size distribution

§Solids concentration

The first 6 solid properties above are stored in a Solids database, and the last 3 are entered via the input editor at appropriate boundary elements.

Pipe inclination

Pipes with an inclination of less than 30 deg are assumed horizontal; pipes with an inclination greater than 30 deg are assumed vertical.


Friction Loss Models

The Slurry module allows for eight different friction loss modules:

§Durand

§Wasp

§Wilson, Addie, Sellgren and Clift

§Sellgren, Wilson Four-Component Model

§Liu Dezhong

§Vsm

§V50

§4CM

Durand

The method used in the Slurry module is more properly called the Durand-Condolios-Worster correlation. This correlation defines the excess pressure gradient Φ as:

Φ = (rPs - rPf ) / rPf = Ω Cv ( Cd0.5 Fr)-1.5

where:

rPs is the pressure drop due to friction for the slurry mixture.

rPf is the pressure drop due to friction for the carrier fluid alone.

Ω is the Durand-Condolios-Worster coefficient.

Cv is the Volumetric fraction of solids in suspension.

Cd is the drag coefficient at terminal settling velocity.

Fr is the Froude number.

The value of Ω is uncertain with values between 65 and 150. FluidFlow uses a value of 82 for this coefficient.

The Durand method uses the d50 particle size only. Size distribution data entry is not used in the calculation.

A Newtonian carrier fluid must be defined as the vehicle when using this modelling approach.

Wasp

This method is an expansion/refinement of the Durand method using the entered size distribution data to define stratified homogeneous concentration layers.

The friction loss of each layer is then calculated using slurry rheology and the Durand correlation. Calculated pressure losses of each layer are summed to provide a total pressure loss.

A Newtonian carrier fluid must be defined as the vehicle when using this modelling approach.

Wilson, Addie, Sellgren and Clift

By default this is the calculation method used by FluidFlow. The total pressure loss for the flow of heterogeneous settling slurry is given by the following equation:

rPs / L = rPf / L + (1 + Φ)

where:

rPs is the pressure drop due to friction for the slurry mixture.

rPf is the pressure drop due to friction of the carrier fluid.

L is the pipe length.

Φ is the frictional increase in pressure drop due to the presence of solid particles.

rPs represents the frictional pressure loss and does not include pipe end elevation differences. FluidFlow displays Total Pressure Loss which includes pressure recovery. The Φ term is calculated from the equation

Φ = Cvd (Ss - Sf ) Cs g D / (f Vm2) (V50 / Vm)M

where:

Cvd is the volumetric concentration of solids.

Ss is the relative density of the solids.

Sf is the relative density of the carrier fluid.

Cs is the coefficient of friction between the bed flow and the pipe wall (defined in the Solids database as the Solid Bed Siding Coefficient).

g is acceleration due to gravity.

D is the inside diameter of the pipe.

f is the Darcy friction factor for the carrier fluid.

Vm is the average velocity of the mixture.

V50 is the value of Vm at which 50% of the solids are in suspension.

M is the exponent to the stratification ratio which accounts for the distribution of particle sizes.

M has limiting upper and lower values of 1.7 and 0.25 respectively. Between those limits its value is a function of the terminal settling velocity of the particles.

The above relationship holds for horizontal flow. In vertical and sloping pipe sections the relationship changes, FluidFlow uses the following relationship for flow in vertical sections and pipes where the slope is greater than 30 degrees.

rPs = 2 ρf Vf2 f L / D

where:

Vf is the actual velocity of the carrier fluid in the vertical section and is a function of in-situ concentration and solids hold up.

Settling Velocity:

The Slurry module uses the methods described in Wilson, Addie, Sellgren and Clift to determine terminal settling velocities. The Solid Shape Factor is included.

Solid Shape Factor takes into account the difference in settling velocity between a solid of the same functional diameter in the shape of a sphere and the same solid of an irregular shape. The Calculation Dialog tab 'Non-Newtonian & Slurry' has a tick box allowing the shape factor to be ignored in a calculation, thereby assuming the particle is spherical.

A Newtonian carrier fluid must be defined as the vehicle when using this modelling approach.

Sellgren, Wilson Four-Component Pipeline Friction Loss Model

More recent experimental tests and studies have provided a better understanding of friction losses for the size distribution of the particles forming a slurry. This modelling approach considers the slurry to be made up of four component parts: 1) a carrier fluid (typically water), 2) pseudo-homogeneous mixture, 3) heterogeneous solids and 4) fully stratified solids. The four components can be described as follows:

Component 1: Carrier Fluid (Xf Fraction).

The carrier fluid typically approximates to Newtonian fluid behavior and is considered to include particles finer than 40µm. These solids are assumed to "combine" with the liquid and are considered only to the extent that they affect the average density and viscosity of the carrier fluid "mixture".

Component 2: Pseudo-homogeneous mixture (Xp Fraction).

The pseudo-homogeneous mixture is considered to combine the liquid and the particle size range of between 40µm and 200µm.

Component 3: Heterogeneous solids (Xh Fraction).

The heterogeneous solids include the "Grits" and include particle sizes between 200 µm and 0.015D.

Component 4: Fully stratified solids (Xs Fraction).

The fully stratified solids component represents the coarser particles or "Clunkers" which are for particle sizes larger than 0.015D.

The Four-Component Model correlation defines the excess pressure gradient for the mixture as a whole, Im (m water/m pipe) by the following equation:

im = [1 + A'(Sm - 1)iw] + [0.22(Sm - 1)(V/V50)-M] + [(Sm - 1)B'(V/0.55Vsm)-0.25]

where:

im is the hydraulic gradient for the flow of the slurry mixture (m water/m pipe).

A' is the relative density coefficient associated with the pseudo-homogeneous component of the fluid. The range for the term A' is 0 to 1.0. In the case where A' = 1.0, the pseudo-homogeneous component approaches the equivalent fluid case.

Sm is the relative density of the slurry mixture.

iw is the hydraulic gradient for equal volumetric flow of water (m water/m pipe).

V is the mean velocity.

V50 is the value of mean velocity at which 50% of the solids are suspended by the fluid.

M is the exponent to the stratification ratio which accounts for the distribution of particle sizes.

B' is a particle size coefficient.

Design Notes:

The Four-Component method should be used for broadly graded slurries with a modest amount of fine particles (sub 200 micron).

A Newtonian carrier fluid must be defined as the vehicle when using this modelling approach.

Liu Dezhong Pipe Friction Loss Model

The method proposed by Liu Dezhong is a two-component method, and has been successfully used in China for the design of short distance (less than 4 km) slurry pipelines with broadly graded size distribution The smaller particles are considered to form a pseudo-homogeneous carrier fluid. Depending on the fluid's overall particle size distribution and concentration it has either Newtonian or non-Newtonian Bingham Plastic properties. The larger particles are assumed as a heterogeneous suspension.

Rather than use particle size as the defining property for the two components, Liu proposes a complex method based on the change in concentration across the cross section of the pipe - i.e., a measure of the concentration gradient from the pipe centerline to just below the top of the pipe. If the gradient is high, then the slurry will possess a higher pseudo-homogeneous fraction, while a low gradient indicates a higher heterogeneous fraction. The volumetric concentrations of both fractions are calculated from a complex set of equations, and the friction loss calculated using the traditional carrier fluid friction loss plus "solids effect" from the heterogeneous fraction.

The properties of the pseudo-homogeneous component are estimated using a method proposed by Tsinghua University, Beijing. A limiting volumetric concentration is determined, below which the fluid can be considered Newtonian. If the pseudo-homogeneous fraction volumetric concentration is below this limiting value, then the friction loss is calculated using the Darcy-Weisbach formula with Fanning friction factor - i.e Newtonian behavior is assumed. If the fraction is above this limiting value, the Hanks formula is used to determine non-Newtonian properties for the Bingham Plastic fluid (subject to the conditions in the pipe) and friction factor, and subsequently applied to the Darcy-Weisbach equation.

The friction loss associated with the heterogeneous (settling) fraction of the slurry is calculated according to the E.J. Wasp/Durand method.

Vsm Friction Loss Model

The Vsm friction loss method is developed to model fully stratified flow in settling slurry systems.Moreover, this correlation can be used for performing hydraulic calculations where particle size is unavailable or for determining the upper pressure loss limit of a slurry transport system.

Among the different methods, only the Vsm model does not utilize particle size as input and only relies on the solids density and concentration for its calculation.

When this correlation is applied, other settling slurry correlations are automatically selected. These are:

§Vertical Pipe Friction Loss: 4CM

§Inclined Pipe Correlation Selection: Wilson - Tse 1984 Chart

§Deposition Velocity Correlation: WASC Generalized Relationship

As particle size data is not applied in the Vsm method, these input fields for inlet boundary nodes will be hidden:

§Use Size Distribution Data

§D50 Mean Diameter

§D85 Diameter

§% Retention on various mesh sizes

Moreover, centrifugal pump solids derating method would also become limited to the following options because of the lack of solids particle size:

·Fixed

·ANSI2021 Monosize

V50 Friction Loss Model

The V50 friction loss correlation is an updated form of the Wilson-Addie-Sellgren-Clift method.

In general they are essentially the same but with the following distinctions:

§V50 and Stratification Ratio exponent can either be calculated or derived from scale-up tests. By selecting V50 as friction loss correlation in the calculation options, additional dropdown fields for V50 and stratification ratio exponent (M) would appear. The user has the option to have the software calculate or manually define V50 and the "M" value obtained from scale up tests.

§The new calculation method for V50 does not account for the pipe size nor friction factor but rather based only on solid characteristics and carrier fluid viscosity.

§Stratification Ratio Exponent (M) for the V50 model has a limit of 1.0 compared to 1.7 of the previous.

4CM Friction Loss Model

The 4CM friction loss model is an update of the Sellgren, Wilson Four-Component Model. This has been developed for use with settling slurries of any grading profile and is thus applied as the default friction loss correlation.

This correlation assumes that fine particles sized 40 microns and smaller combine with the liquid phase to form a Newtonian carrier fluid that flows turbulently and above the limit of stationary deposition.

Under 4CM, the total friction loss for the slurry is the sum of the friction losses contributed by each component category as characterized below:

§Carrier fluid which also includes solid volumetric fraction for particles 40 x 2.65 / Solids Density microns

§Pseudo – homogeneous, where solid particles sized 40 to 200 microns are present

§Heterogenous, component which contain particles 200 microns up to a size equivalent to 1.5% of pipe diameter and

§Fully stratified, fraction which accounts for the solids larger that 1.5% of the pipe diameter.

IMPORTANT NOTE

When comparing FluidFlow's Slurry module calculations with examples from other programs or references it is important to ensure that those calculations include the shape factor correction, if this correction is included in the FluidFlow calculation. FluidFlow Slurry by default includes shape factor correction; this is not always the case with other calculation methods and examples.


Data Entry - Input Inspector/Editor

Data entry into the Input Editor specific to settling slurry calculations occurs within the following boundary components only:

Known or Assigned Pressures KnownPressure

Known or Assigned Flows KnownFlow

Reservoirs or Accumulators Accumulator

The table below, shows the additional entries:

For Known Pressures, Known Flows (with flow direction into the network) and for Reservoirs an additional row beneath the Fluid row called

Fluid Type appears.

FLUID AND FLUID TYPE

Field Name

Field Entry

Image

Fluid

Allows you to select any Newtonian or Non-Newtonian liquid in the Fluids Database.

slurry input editor 1

Fluid Type

Choice of Newtonian or Non-Newtonian Non-Settling sets the fluid to the currently selected fluid obtained from the fluid database.

Choice of Heterogeneous Settling displays additional rows (see table below) and the Fluid selected becomes the carrier fluid in the slurry.

ADDITIONAL ROWS for HETEROGENEOUS SETTLING Known Pressure and Reservoirs Boundaries.

Field Name | Field Entry | Image
Solids | Select the solids material from the Solids Database | slurry input editor 2
Concentration defined by | Choose the concentration by either volume or mass percent. In this context concentration refers to concentration of the mixture. |
Include Size Distribution: NO | Value can be Yes or No |
d50 | Input d50 mass mean particle diameter |
d85 | Input d85, 85% by mass of particles are finer. |
Include Size Distribution: YES | Enter full range of mesh size retained values | Input Editor Solid2

ADDITIONAL ROW for HETEROGENEOUS SETTLING Known Flow into Network.

Field Name | Field Entry | Image
Flow Defined By | Allows you to select the flow basis for known flows into the network. The available options are a flow based on total mixture flow; a flow based on the solids only flow; a flow based on the carrier only flow.. | slurry input editor 3

The Input Editor automatically determines the friction loss model to be used from the database definition of the selected fluid. If a Newtonian fluid is selected, then the friction loss model is Moody or Hazen Williams; if a non-Newtonian / non-settling liquid is selected, the friction loss model reflects the entered liquid data.

Pipe Inclination:

Pipes with an inclination of less than 30 deg are assumed horizontal; pipes with an inclination greater than 30 deg are assumed vertical. Pipe inclination is automatically determined by FluidFlow from the relative levels of the pipe end nodes and its length. The pipe slope is automatically determined from elevation change between the pipe ends and the pipe length.


Calculation Options Dialog

Settling Slurries quids

When the Slurry module is active a new page - Slurry - is visible in the Calculations Options dialog.

Heterogeneous Settling Slurries Correlation:

The drop-down menu for heterogeneous slurries allows one of the following correlation methods to be selected:

§Durand

§Wasp

§Wilson, Addie, Sellgren and Clift (WASC)

§Sellgren, Wilson Four-Component Model

§Liu Dezhong

§Vsm

§V50

§4CM

Vertical Pipe Friction Loss Correlation:

Enable selection of these vertical pipe friction loss correlations:

§Vertical Pipe WASC Loss

§4CM

§Spelay, Gillies, Hashemi and Sanders 2017 Collisional Stress Models

Note: When Vsm friction loss is selected, the Vertical Pipe Friction Loss Correlation is automatically set to 4CM as it is the only method that can be simplified to not require particle size data.

Inclined Pipe Correlation Selection:

Provides the adjustment chart to apply for correcting deposition velocity data against pipe inclination:

§Wilson - Tse 1984 Chart

§Extended Wilson - Tse 1984 Chart

The Extended Wilson - Tse 1984 chart is an updated version of the earlier model where it accounts for the impact of particle size (d50) to pipe internal diameter ratio (d50/D):

§At d50 / D ratio < 0.003, no adjustment for deposition velocity is needed

§At d50 / D ratio > 0.04, adjustment is the same with the Wilson - Tse 1984 chart

Note: When Vsm friction loss is selected, Inclined Pipe Correlation Selection is automatically set to Wilson - Tse 1984 Chart as this method does not require particle size data.

Deposition Velocity Correlation:

FluidFlow includes three options for determining the deposition velocity through Maximum deposition limit velocity (Vsm):

§WASC Generalized Relationship

§As a function of particle size (RP King Method)

§GIW VSCALC 2023

GIW VSCALC 2023, applied as the default method is a systematic application Wilson and Thomas velocity correlations:

§Wilson – GIW

§Thomas 1979

§Thomas 2015

§Wilson 1992

Optional Fields:

Depending on the friction loss correlation applied, the following additional items appear/activate on the slurry page of the calculation options dialog box:

- V50

Selecting V50 friction loss model would introduce a dropdown field on how V50 and Stratification Ratio Exponent "M" would be defined either as:

§Calculated

§User Defined

- Durand / Wasp

Constant (W) used in the Durand Equation: The value of W is uncertain with values between 65 and 150. A Durand Constant of 82 is widely quoted in literature and this is the value used in FluidFlow. Users can change this value if required.

Durand Constant used in WASP Method: The Durand variable used for calculating Vsm with the generalized relationship model.

- Version 3.53 (and Older) Friction Loss Correlations

Because of solver architecture, selecting any of the following friction loss correlations would set and disable selection of Vertical Pipe Friction Loss method and Inclined

Pipe Deposition Velocity Correction:

§Durand

§Wasp

§Wilson, Addie, Sellgren and Clift (WASC)

§Sellgren, Wilson Four-Component Model

§Liu Dezhong

The following calculation settings will be engaged if any of the above is selected:

§Vertical Pipe Friction Loss: Vertical Pipe WASC Loss

§Inclined Pipe Correlation Selection: Wilson - Tse 1984 Chart

Assume inclined pipes where elevation differences and pipe lengths indicate this. Adjust pressure losses and deposition velocity calculations for the incline: Inclined pipes are only applicable to WASC method, and it applies a correction factor to pipes from -20 to +80 degree inclination. Above 80 degrees it assumes a vertical pipe and the software applies a different correction factor.

Assume particles are spherical in settling and deposition velocity estimations: Solid Shape Factor takes into account the difference in settling velocity between a solid of the same functional diameter in the shape of a sphere and the same solid of an irregular shape. The tick box allows the shape factor to be ignored in a calculation, thereby assuming the particle is spherical.

IMPORTANT NOTE

When comparing FluidFlow's Slurry module calculations with examples from other programs or references it is important to ensure that those calculations include the shape factor correction, if this correction is included in the FluidFlow calculation. FluidFlow Slurry by default includes shape factor correction; this is not always the case with other calculation methods and examples.


Pulp & Paper

The non-Newtonian & Slurry Calculation module allows Pulp & Paper Stock calculations to be accomplished using either the K Moller or TAPPI method.


Calculation Options Dialog

Pulp & Paper Stock quids

If the Slurry module is active then a new tabbed page is added to the default Calculations Options Dialog (F2 key).

Calculations Options Dialog Pulp

Pulp & Paper Stock Pressure Loss Correlation: This drop-down menu allows users to choose from two correlation methods:

§TAPPI.

§Moller K.

TAPPI Pressure Loss Method: If you have selected "TAPPI" as the preferred pressure loss correlation option, you can then choose from a range of pre-defined pulp types stored in the software database. The description of these pulp types is as follows:

§Unbeaten aspen, sulfite never dried.

§Long-fibered kraft, never dried CSF 725.

§Long-fibered kraft, never dried CSF 650.

§Long-fibered kraft, never dried CSF 550.

§Long-fibered kraft, never dried CSF 260.

§Bleached kraft pine, dried and reslurried.

§Kraft birch, dried and reslurried.

§Stone groundwood, CSF 114.

§Refiner groundwood, CSF 150.

§Newsprint broke, CSF 75.

§Refiner groundwood (hardboard).

§Refiner groundwood (insulating board).

§Hardwood NSSC, CSF 620.

§Long-fibered kraft, dried and reslurried.

§Bleached kraft pine, dried and reslurried (SS Pipe).

§Long-fibered kraft pine, never dried CSF 725 (SS Pipe).

where:

CSF: is the Canadian Standard Freeness.

Moller Pressure Loss Method: If you have selected "Moller K" as the preferred pressure loss correlation option, you simply enter the values for Fiber Aspect Ratio and Freeness of Pulp.


Databases for Non-Newtonian Calculations

The Fluids database is used to define the fluid rheology and thermo physical properties of non settling Non Newtonian fluids.

The Solids database is used to store properties of the solids used in slurry calculations.


Fluids Database

Non-Newtonian / non-settling liquids' properties are entered directly into the Fluids Database via the Fluid Editor fields shown below.

The Fluid Editor dialog is selected via the 'Database | Fluids...' menu item.

FLUID EDITOR

Field Name | Field Entry | Image
Fluid Type | Select Non-Newtonian Liquid | Fluid Database Editor1
Fluid Name | Enter a unique name |
Liquid Viscosity Definition | Select to go to the Physical Property Editor |

Notes:

1.All other fields are defined in the Database Section: Fluids.

2.The physical properties of the fluid are entered via the Physical Properties Editor, which activates when the Liquid Viscosity Definition is selected.

PHYSICAL PROPERTY EDITOR - LIQUID VISCOSITY

Field Name | Field Entry | Image
Viscosity Definition | Select from: Undefined Directly define constants Shear Stress-Shear Rate | Fluid Database Editor2
If 'Directly define constants' is selected then .. Fluid Class | Select from: Casson Power Law Herschel Bulkley Bingham Plastic | Fluid Database Editor3
If 'Shear Stress-Shear Rate' is selected then ... Table | Enter tabular data for curve fit |

From the above table you can see that fluid viscosity as a function of shear can be stored as table values of stress against shear OR you can enter the relevant model constants directly according to the rheology selected.

The main reason for not allowing data entry directly from say rotating cup or tube viscometers is because of the individual correction factors that need to be applied to the direct measurements.


Solids Database

Solids properties are entered directly into the Solids database via the Solid Editor fields shown below.

FluidFlow is issued with a database of solids already defined. If however you wish to add new solids to this database, select Add to create a new solid and enter a unique name.

Settling Solids

Settling Solids Data Entry

Solid Name

Descriptive name for this record.

Solid Density

The density of the solids without including the spaces between the particles, i.e., the density of the compressed particles. The value for Solid Density is used to determine the slurry specific gravity/density.

Bulk density

This is a property of particulate materials. It is the mass of many particles of the material divided by the volume they occupy. The volume includes the space between particles as well as the space inside the pores of individual particles.

Bulk density is not an intrinsic property of a material; it can change depending on how the material is handled. For example, sand poured in a cylinder will have a particular bulk density; if the cylinder is disturbed, the sand particles will move and settle closer together, resulting in a higher bulk density.

Note, the value for bulk density is the DRY bulk density.

Solid Specific Heat

The specific heat capacity of the solids can be defined here. This value will be used when carrying out heat transfer studies. If you wish to model a slurry system without heat transfer and do not have this value available, you can enter an arbitrary value of a similar solid already in the database.

Solid Thermal Conductivity

The thermal conductivity of the solids can be defined here. This value will be used when carrying out heat transfer studies.

Note, heat transfer of slurry pipelines is not very prominent in the mineral processing industry and as such, it is unlikely that this value will be used in the plant design. If you wish to model a slurry system without heat transfer and do not have this value available, you can enter an arbitrary value of a similar solid already in the database.

Solid Shape Factor

This takes into account the difference in settling velocity between a solid of the same functional diameter in the shape of a sphere and the same solid of an irregular shape. There are many shape factor definitions in the literature; FluidFlow uses the Clift or Heywood shape factor which is defined as: (volume of the particle) / (particle diameter)3.

The Calculation Dialog tab 'Non-Newtonian and Slurry' has a tick box allowing the shape factor to be ignored in a calculation, thereby assuming the particle is spherical.

Solid Bed Sliding Coefficient

This is the coefficient of friction between the sliding bed and the pipe wall. This value is normally around 0.4 and is only used in the WASC Correlation.

TAPPI Pulp and Paper Solids

Solids Database Pulp

Pulp Data Entry
Pulp Type | This is the description of the pulp defined in the Pulp and Paper Solids database.
Velocity Limit Constant K' |
Velocity Limit Constant Sigma |
Numerical Constant K | The numerical coefficient for a given pulp.
Alpha Index | The alpha (α) exponent for a given pulp.
Beta Index | The beta (β) exponent for a given pulp.
Gamma Index | The gamma (γ) exponent for a given pulp.


QA Slurry and Non-Newtonian

There are many example calculations which are used to verify the adherence of the software to the various published calculation methods.

The examples can be found in the folder "[FluidFlow3 folder]\QA Non Newtonian Flow". Many refer to the example calculations provided in textbooks. We will consider the textbook example from Wilson, Addie, Selgren and Clift 3rd Ed Case Study 6.1.

This file can be found at: "[FluidFlow3 folder]\QA Non Newtonian Flow\Settling\WASC Ed 3 Case Study 6.1.ff3".

Points to note in setting up the model:

1.As per example flow basis is the solids flow.

2.Particle shape factor is included.

Points to note in the results:

1.Flow refers to total flow of the slurry mixture.

2.Velocity is the average mixture velocity based at pipe inlet conditions.

3.Specific Energy is calculated in W s/kg-m.

4.Friction Factor is the Darcy friction factor which is 4 times the Fanning friction factor.

5.Cvd Deposition Velocity refers to the deposition velocity at the actual flowing concentration.


Slurry and Non-Newtonian Technical Reference

Flite Software gratefully acknowledges the following sources used in the development of the Slurry module:

§"Slurry Transport Using Centrifugal Pumps", by KC Wilson, GR Addie, A Sellgren and R Clift, 3rd Edition, Pub Springer Science + Business Media, 2006.

§"Introduction to Practical Fluid Flow" by RP King, Pub Butterworth Heinman, 2002

§"Chemical Engineering Fluid Mechanics", by Ron Darby, Pub Marcel Dekker, Inc, 2001

§"Slurry Systems Handbook" by BE Abulnage, Pub McGraw-Hill 2002

§"Non-Newtonian Flow in the Process Industries" by PR Chhabra & JF Richardson, Pub Butterworth Heinmann 1999.

§"Rheological Methods in Food Process Engineering" by JF Steffe, Pub Freeman Press 1996

§"Solid-Liquid Flow. Slurry Pipeline Transportation", by Edward J Wasp, John P King and Ramesh L Ghandi. Pub TransTech Publications, 1976.

In addition to the above references, a considerable amount of literature research by Flite Software is also incorporated into the slurry and Non-Newtonian module.


Databases

A powerful feature of FluidFlow are the many associated databases that support and enhance the application. These include a database of fluid properties, databases that describe the performance and limits of fluid equipment items, materials databases that hold pipe sizing and pipe insulation information, and a database of manufacturers, costs, and user-defined areas of application.

Databases are used extensively in FluidFlow in order to reduce the volume of data entry. FluidFlow uses 18 databases for this purpose, typically flow versus pressure loss data is stored for all resist developments. For Pipes sizing economic and thermal data is stored. For fluids thermo-physical and transport properties are stored as functions of pressure and temperature. When FluidFlow makes a calculation it obtains this data on an "as needed" basis. It is possible to make copies of a database and connect to the copy, this can be useful if you are part of an organization which handles a large number of projects. Databases can reside anywhere that can be accessed from your desktop; for example on a network server or across a WAN – this allows you to share data between any number of users.


Pipes

FluidFlow contains a database of standard pipe sizes which can be used when building a network. The user can also supplement this database by adding new pipe size data for specific applications. This section of the help file outlines the information required when adding a pipe to the database.

To access the pipes database, select the Database | Pipes menu item:

Pipes Database v3.36

Actions

Add

Add a new pipe to the database.

Delete

Delete the currently selected pipe record from the database.

Clone

Makes a copy of the currently selected pipe record and adds it to the database. For example: cloning '1 inch' will result in a new record '1 inch (2)'.

Note: This action is only available via the context menu when you right-mouse click on the current record.

Load

Loads a ".comp" file - containing a pipe record - and adds it to your current database. See 'Save' below for more information.

Save

Saves the currently selected pipe record as a ".comp" file type.

This means that if you have created a new pipe in your local database (stored on your "DATA" Folder), you can save the pipe file and share with another user. The user can then use the "Load" button to select the file and add the new pipe data to their local database.

Pipe Data Entry
Name | Allows you to enter a descriptive name for this element.
Pipe Diameter Unit | The units used when defining the pipe inside and outside diameter.
Pressure Unit | The pressure units used when defining the maximum operating pressure.
Pipe Data | The pipe classification, dimensions, etc., can be defined via this field. Figure 2 provides an overview of this data.

Pipes Database Editor v3.36

Figure 2: Pipe Data Editor.

Pipe Data Entry (contd.)
Class Name | Allows you to enter a descriptive name for the pipe classification.
Inside Diameter | This refers to the internal diameter of the pipe.
Outside Diameter | This refers to the outside diameter of the pipe.
Max. Op. Pressure | If there is a maximum pressure rating for the pipe you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

When adding new pipes to the database, it is recommended that the pipe classification, internal, and outside pipe diameters are fully defined.

If any of the above is unclear, or you require any further information, please contact us at: support@fluidflowinfo.com.


Boundaries | Sprinklers

FluidFlow contains a database of sprinklers which can be used when building a network. The user can also very easily add new sprinkler models to the database for specific modelling applications. Note, you only need to add a component to the database once. It will then be stored for all future projects.

To access this database, select the Database | Boundaries menu item:

Sprinkler Data Entry

Actions

Add

Add a new sprinkler to the database.

Delete

Delete the currently selected sprinkler record from the database.

Clone

Makes a copy of the currently selected sprinkler record and adds it to the database. For example: cloning '11Y T1' will result in a new record '11Y T1 (2)'.

Note: This action is only available via the context menu when you right-mouse click on the current record.

Import

Import sprinkler records from a FluidFlow2 database.

Load

Loads a ".comp" file - containing a sprinkler record - and adds it to your current database. See 'Save' below for more information.

Save

Saves the currently selected sprinkler record as a ".comp" file type.

This means that if you have created a new sprinkler in your local database (stored on your "DATA" Folder), you can save the sprinkler file and share with another user. The user can then use the "Load" button to select the file and add the new sprinkler data to their local database.

Sprinkler Data Entry
Name | Allows you to enter a descriptive name for this element.
Manufacturer | The name of the sprinkler manufacturer can be entered here.
Materials | The materials used to manufacture the sprinkler may be defined in this field, e.g., Steel, Stainless Steel, Bronze, etc.
Applications | The specific applications in which the sprinkler may be used, e.g., Chemical, Power, etc.
Nominal Size | The Nominal Size of the sprinkler refers to the connection size.
Size Unit | This refers to the diameter/size units used in the above entry.
Min Operating Pressure | If there is a minimum pressure rating for the sprinkler, you should enter this value here. Leaving the value at 0 means that FluidFlow will not complete an operating pressure check.
Max Operating Pressure | If there is a maximum pressure rating for the sprinkler, you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.
Operating Pressure Unit | The pressure units used when defining the Min & Max Operating Pressures.
Defined By | There are two possible entries for this field: 1) Table and 2) Nominal K. If we select "Table", a new data-entry field titled "Curve Fit" will appear where we can define the performance data
Curve Fit | This is where we define the performance data for the sprinkler. Simply fill out the columns for flow and associated pressure loss and FluidFlow will automatically develop the curve plot. Figure 2 gives an example curve fit relationship for sprinkler model "Full Cone 1" 1/4". Note, you can select the most appropriate Curve Fit Type and Equation Order for your data.

Sprinkler Curve Fit

Figure 2: Curve-fit relationship for a Sprinkler.

Curve Fit Data Entry
Curve Fit Type | There is only one selection available: Polynomial.
Equation Order | There are several options available: §BestFit §Linear §Quadratic §Cubic §Quartic §Quintic
Flow Unit | The flow units used when defining the flow rate coordinate for the sprinkler.
Pressure Loss Unit | The units used when defining the Pressure Loss coordinate for the sprinkler.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Centrifugal Pumps

FluidFlow contains an extensive database of centrifugal pumps which can be used when building a network. The user can also supplement this database by adding new pumps for specific applications. This tutorial demonstrates how to add a new centrifugal pump to the database.

Defining a pump capacity curve in FluidFlow using head units is straightforward (m fluid, ft fluid, etc.). If however you wish to define a pump capacity curve which has been developed by the manufacturer using pressure units (Kpa, bar, etc.), it will be necessary to convert the coordinates to head units. This example takes us through the steps required to define this type of pump.

Pump Data:

Operating Speed = 1780 RPM

Operating Impeller Diameter = 393.1mm

Min. Impeller Diameter (D3) = 380mm

Max. Impeller Diameter (D3) = 475mm

Maximum Operating Pressure = 25.3 bar g

Suction Size = 200mm

Discharge Size = 150mm

Figure 1 provides an illustration of a typical pump capacity curve and Figure 2 details the curve coordinates.

Figure 1 – Pump Capacity Curve.

manufacturers pump curve

Figure 2 – Pump Capacity Curve Coordinates.

pump curve coordinates

The first step is to convert the pressure units to head units using the equation P = ρ*g*h. H = P/ρ*g. Figure 3 provides details of this conversion. Note, the value for density was obtained from the manufacturer's technical datasheet and is the density value for the fluid from which the curve was developed.

Figure 3 – Pump Capacity Curve Coordinates.

convert pump units

Now we have calculated the head units, we are ready to define the pump in the components database.

Firstly, define the main pump parameters by selecting 'Database | Boosters | Centrifugal Pump' and clicking 'Add'. Give your new pump a Unique Name and enter the main operating parameters for the pump (See Figure 4).

Figure 4 – Pump Operating Data.

Note, if we had defined a min and max speed for the pump operating data, we would have the ability to model the effect of changing the pump speed from the input tab of the data palette.

Now we can define the pump capacity curve using the flow units provided by the manufacturer and the head units as calculated in Figure 3. Figure 5 below provides an illustration of the defined pump curve coordinates based on available manufacturer's data. Note, the Min & Max Limits (Vertical Red Lines) have been set based on the actual curve data available from the manufacturer.

An Important point to note is the entry at Head = 0. You are unlikely to get this information from any manufacturer, so you MUST make an estimate. The estimate you make can be guessed (this is OK because we will never operate the pump anywhere near to this condition). When you make the guess at head of zero, ensure that you do not "upset" the shape of the curve for the valid data points by selecting a value that lies on a smooth curve. If you do not make this guess you run the risk of using the pump in a system that is difficult to solve (converge).

Figure 6 shows how an additional row has been added where we have made an estimate of the flow at 0 head. As you can see, the curve still intersects the coordinates and is an accurate representation of the manufacturer's data. The Max Limit is retained as 2816.8 usgpm. If we solve this pump in a system and the duty point is beyond the Max Limit of 2816.8 usgpm, we will get a warning message to that effect. This informs us that we are operating outside the range for the pump based on available manufacturer's data. We would therefore need to investigate the pump performance further with the vendor.

Note, by default, the software displays one row for Flow vs. Head units in the "Curve Fit" editor. Use the "Down Arrow key" if you need to create additional rows for the curve coordinates.

Figure 5 – Pump Capacity Curve.

pump capacity curve

Figure 6 – Pump Capacity Curve Defined Across Full Quadrant.

Pump Capacity Curve Zero Head Estimated

Enter the pump efficiency curve using the same method as above, taking care to review the Min & Max Limits.

Figure 7 – Pump Efficiency Curve.

pump efficiency curve

Finally, enter the pump NPSHr curve using the same approach, again taking care to review the Min & Max Limits.

Figure 8 – Pump NPSHr Curve.

pump npshr curve

Once the above steps have been completed, the new centrifugal pump will be available in the database for all future modelling projects.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Rotating PD Pumps

FluidFlow contains a database of Rotating Positive Displacement (PD) Pumps which can be used when building a network. The user can also supplement this database by adding new pumps for specific applications. This section of the help file outlines the information required when adding a new PD pump to the database.

Firstly, define the main pump parameters by selecting Database | Boosters | Rotating Positive Displacement Pump and clicking the "Add" button. Give your new pump a (unique) Name and enter the main operating parameters for the pump (see Figure 1).

Rotating PD Pump Database v3.36

Figure 1: Data Entry for a Rotating Positive Displacement Pump.

Rotating PD Pump Data Entry
Name | A descriptive name for this element.
Manufacturer | The name of the pump manufacturer.
Materials | The materials used to manufacture the pump may be defined in this field, e.g., Steel, Stainless Steel, Bronze, etc.
Applications | The specific applications in which the pump may be used, e.g., Chemical, Power, etc.
Max Operating Pressure | If there is a maximum pressure rating for the pump you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.
Pressure Unit | Pressure units used when defining the Max Operating Pressure.
Suction Size | Diameter of the pump suction connection.
Discharge Size | Diameter of the pump discharge connection.
Size Unit | Diameter/size units used in the above entries.
Max Operating Speed | Maximum operating speed of the pump which is available from pump manufacturers.
Efficiency (%) | Pump efficiency which is available from pump manufacturers.
Viscosity Max Limit | Maximum fluid viscosity the pump can effectively and safely transfer.
Viscosity Unit | Viscosity units used in the above entry.
Displacement Vol/Rev | Volumetric quantity of fluid displaced per pump revolution. This information is usually available from pump manufacturers.
Volume Unit | Volume units used in the above entry.
Slip Data | The pump slip capacity which is a function of fluid viscosity. Figure 2 provides an illustration of a typical performance factor curve.

Rotating PD Pump Curve v3.36

Figure 2: Data Entry for Slip Capacity for a Rotating Positive Displacement Pump.

To create the curve-fit, simply enter the coordinates as provided by the manufacturer in the columns on the left hand side. FluidFlow will automatically create the curve-fit once a minimum of three coordinates have been defined.

Curve Fit Data Entry
Curve Fit Type | There is just one choice available: Log Polynomial.
Viscosity Unit | Refers to the viscosity units used in the data entry for the curve.
Slip Capacity Unit | Refers to the slip capacity units used in the data entry for the curve.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Fans or Compressors

FluidFlow contains a database of Fans & Compressors which can be used when building a network. The user can also supplement this database by adding new fans or compressors for specific applications. This section of the help file outlines the information required when adding a new fan/compressor to the database.

Firstly, define the main booster parameters by selecting: Database | Boosters | Fan or Compressor and select "Add". Give your new booster a (unique) Name and enter the main operating parameters as shown in Figure 1.

Fan & Compressor Data v3.36

Figure 1: Data Entry for a Fan or Compressor.

Name: Allows you to enter a descriptive name for this element.

Manufacturer: The name of the booster manufacturer can be entered here.

Materials: The materials used to manufacture the booster may be defined in this field. Options include: Steel, Stainless Steel, Bronze, etc.

Applications: This option allows you to list the specific applications in which the booster may be used. Options include: Chemical, Power, etc.

Max Operating Pressure: If there is a maximum pressure rating for the booster you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

Suction Size: This refers to the diameter of the booster suction connection.

Discharge Size: This refers to the diameter of the booster discharge connection.

Size Unit: This refers to the diameter/size units used in the above entries.

Data Operating Speed: This refers to the booster-speed on which the capacity curve has been defined in the database.

Min Operating Speed: This refers to the minimum operating speed of the booster as advised by the manufacturer.

Max Operating Speed: This refers to the maximum operating speed of the booster as advised by the manufacturer.

Data Impeller Diameter: This refers to the booster impeller diameter on which the capacity curve has been defined in the database.

Min Impeller Diameter: This refers to the minimum impeller diameter of the booster as advised by the manufacturer.

Max Impeller Diameter: This refers to the maximum impeller diameter of the booster as advised by the manufacturer.

Impeller Diameter Unit: This refers to the diameter/size units used in the above entries.

Volume Flow Condition: This refers to the reference flowing conditions on which the booster performance has been established by the manufacturer. There are two options available: 1) Standard (1 atm, 15oC) and 2) Normal (1 atm, 0oC). You can usually find this data on the manufacturer's data sheets.

Capacity Curve Data: This field allows you to define the capacity performance curve for the booster based on the reference volume flow conditions as described above.

Figure 2 provides an illustration of a sample capacity performance curve. To create the curve, simply enter a minimum of three coordinate values and the software will automatically plot the curve. To ensure the highest level of accuracy, it is recommended that the capacity curve is defined across the full quadrant.

Fan & Compressor Cap Curve v3.36

Figure 2: Performance Capacity Curve for a Fan or Compressor.

Note, fan curves supplied by manufacturers rarely extend far to the right hand side of the quadrant. It is therefore recommended that users make an estimate for the final curve coordinate. The estimate you make can be guessed (this is OK as we will never operate the fan anywhere near to this condition). When you estimate the flow value at the corresponding pressure value of zero, ensure that you do not distort the shape of the curve.

Figure 2 shows how an additional row has been added where we have made an estimate of the flow (760 ft3/min) at zero pressure. As you can see, the curve still intersects the coordinates and is an accurate representation of the manufacturer's data.

Design Tip: FluidFlow will automatically correct the fan performance curve if the fan is modeled in a system which is transporting a gas/vapor at conditions different to the reference volume flow conditions defined for the booster in the database (refer to the item above titled "Volume Flow Condition"). The actual system flow rate, fluid density along with all other physical properties will be calculated accurately based on the corrected fan performance. When you view the performance curves for the fan on the Chart tab of the Data Palette, you may notice the performance curve has been corrected/adjusted accordingly.

Curve Fit Type: There is only one selection available: Polynomial.

Equation Order: There are six options available: 1) Best Fit, 2) Linear, 3) Quadratic, 4) Cubic, 5) Quartic, & 6) Quintic.

Flow Unit: The flow units used when defining the flow rate coordinate for the booster.

Pressure Unit: The units used when defining the pressure coordinate for the booster.

Min Limit: This represents the lowest flow coordinate available from the manufacturer. It is important to set this value accurately. If this booster is modeled in a system with a duty point below the Min Limit value, a warning will be enunciated to that effect.

Max Limit: This represents the highest flow coordinate available from the manufacturer. It is important to set this value accurately. If this booster is modeled in a system with a duty point above the Max Limit value, a warning will be enunciated to that effect.

Efficiency Curve Data: This field allows you to define the efficiency curve for the booster based on the reference volume flow conditions as described above.

Figure 3 provides an illustration of a sample efficiency curve. To create the curve, simply enter a minimum of three coordinate values and the software will automatically plot the curve. To ensure the highest level of accuracy, it is recommended that the curve is defined in full.

Fan & Compressor Eff Curve v3.36

Figure 3: Efficiency Curve for a Fan or Compressor.

Curve Fit Type: There is only one selection available: Polynomial.

Equation Order: There are six options available: 1) Best Fit, 2) Linear, 3) Quadratic, 4) Cubic, 5) Quartic, & 6) Quintic.

Flow Unit: The flow units used when defining the flow rate coordinate for the booster.

Min Limit: This represents the lowest flow coordinate available from the manufacturer. It is important to set this value accurately.

Max Limit: This represents the highest flow coordinate available from the manufacturer. It is important to set this value accurately.

Add: This button allows you to add a new fan or compressor to the database.

Delete: This button allows you to delete a fan or compressor record from the database.

Load: You can load a ".comp" file to the "DATA" Folder stored on your local PC or network if another user has saved (see step described below) and shared their fan or compressor data with you.

Save: This option allows you to save a fan or compressor ("clone") as a ".comp" file type. This means if you have created a new fan or compressor in your local database (stored on your "DATA" Folder), you can save the fan or compressor file and share with another user. The user can then save the .comp file to their local PC, select the "Load" button which will load-in the new fan or compressor file data to their local database.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


PD Pumps or Compressors

FluidFlow contains a database of Positive Displacement (PD) Pumps & Compressors which can be used when building a network. The user can also supplement this database by adding new pumps or compressors for specific applications. This section of the help file outlines the information required when adding a new PD pump/compressor to the database.

Firstly, define the main pump parameters by selecting: Database | Boosters | Positive Displacement Pump or Compressor and select "Add". Give your new pump a (unique) Name and enter the main operating parameters for the pump (see Figure 1).

PD Pump Database v3.36

Figure 1: Data Entry for a Positive Displacement Pump or Compressor.

Name: Allows you to enter a descriptive name for this element.

Manufacturer: The name of the pump manufacturer can be entered here.

Materials: The materials used to manufacture the pump may be defined in this field. Options include: Steel, Stainless Steel, Bronze, etc.

Applications: This option allows you to list the specific applications in which the pump may be used. Options include: Chemical, Power, etc.

Max Operating Pressure: If there is a maximum pressure rating for the pump you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

Suction Size: This refers to the diameter of the pump suction connection.

Discharge Size: This refers to the diameter of the pump discharge connection.

Size Unit: This refers to the diameter/size units used in the above entries.

Max Operating Speed: This refers to the maximum operating speed of the pump which is available from pump manufacturers.

Efficiency (%): This refers to the pump efficiency which is available from pump manufacturers.

Displacement Vol/Rev: This refers to the volumetric quantity of fluid displaced per pump revolution. This information is usually available from pump manufacturers.

Volume Unit: This refers to the volume units used in the above entry.

Use Internal Eff. Correction: There are two options to choose from, "Yes" or "No". Choosing "No" requires the user to define the curve relationship for performance degradation factor. Choosing "Yes" allows FluidFlow to automatically apply a correction factor for pump efficiency.

Performance Factor: This represents the performance degradation factor which is a function of pump speed and typically has a range of 0 - 1. The degradation factor takes into account the pump slippage and performance "tail-off" with pump speed.

A major effect on PD pump performance is the loss of flow due to slip conditions. The expanding cavity on the inlet side of a PD pump creates a low pressure area that requires it to be filled with fluid. This cavity can then be filled with fluid from the inlet pipeline under ideal operating conditions. However, if slip occurs, the cavity may also be partly filled with fluid on the discharge side flowing back through the pump clearances to the inlet side, thus affecting the overall pump performance. In general, the pump performance is dependent on the slip which occurs in a pump. The performance factor takes this into consideration and is plotted along the curve y axis. Figure 2 provides an illustration of a typical performance factor curve.

PD Pump Curve v3.36

Figure 2: Data Entry for Performance Factor for a Positive Displacement Pump or Compressor.

To create the curve-fit, simply enter the coordinates as provided by the manufacturer in the columns on the left hand side. FluidFlow will automatically create the curve-fit once a minimum of three coordinates have been defined.

Curve Fit Type: You can select the most accurate curve-fit from the top left corner of the dialog. There are two options to choose from: Linear and Polynomial.

Equation Order: You can select the most accurate equation order from the top left corner of the dialog. There are a number of options available including: Linear, Quartic, Cubic, etc.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Valves

FluidFlow contains a database of two-port valves which can be used when building a network. The user can also very easily add new valves to the database for specific modelling applications. Note, you only need to add a component to the database once. It will then be stored for all future projects. This section of the help file outlines the information required when adding a new valve to the database.

DatabaseEditor-Valves Two Port Key Parameters

Figure 1: Data Entry for Two-Port Valves.

Name: Allows you to enter a descriptive name for this element.

Manufacturer: The name of the valve manufacturer can be entered here.

Materials: The materials used to manufacture the valve may be defined in this field. Options include: Brass, Copper, Steel, etc.

Applications: This option allows you to list the specific applications in which the valve may be used. Options include: Chemical, Power, etc.

Max Operating Pressure: If there is a maximum pressure rating for the valve you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

Size: This refers to the diameter of the valve opening.

Size Unit: This refers to the diameter/size units used in the above entry.

Defined By: Two-port valves can be defined in the Database in a number of ways as set out in Figure 2.

DatabaseEditor-Valves Two Port DefinedBy

Figure 2: Pressure Loss Relationship for Two-Port Valves.

If you intend "manually" editing the % opening of a valve in your system and modelling the effects of this design change, we need to ensure that the flow vs. pressure loss data for the valve has been defined in the database. Many valves in the database have the flow vs. pressure loss defined. This relationship can be defined by: 1) K with positioning, 2) Kf with positioning or 3) Cv,Kv with positioning.

If a valve has been defined in the database by: 1) K no positioning, 2) Kf no positioning and 3) Cv-usgpm/psi no positioning, 4) Kv-m3/h/kPa no positioning or 5) Kv-l/min/bar no positioning, we will not be able to model changes in the % opening of the valve from the Input Inspector.

Curve Data: The valve curve coordinates can be defined in this field. Simply enter the coordinates as provided by the manufacturer in the columns on the left hand side. FluidFlow will automatically create the curve-fit once a minimum of three coordinates have been defined.

Note, by default, the software displays one row for % Open vs. Cv(Cv usgpm/psi) units in the "Curve Fit" editor. Use the "Down Arrow" key or Select "ADD" if you need to create additional rows for the curve coordinates.

DatabaseEditor-Valves Two Port Curve Fit Limits

Figure 3: Curve-Fit Data Entry for a Two-Port Valve.

Note, users can select the most accurate curve-fit and equation order from the top left hand corner of the Curve Fit dialog. It is also important to set the Min & Max Limits as these will form the basis of any warning generated when the valve is solved in a system, i.e if we solve a system such that the operating point for the valve is outside the min and max limits, we will get a warning in the Messages tab to that effect.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Control Valves

FluidFlow contains a database of control valves which can be used when building a network. The user can also very easily add new control valves to the database for specific modelling applications. Note, you only need to add a component to the database once. It will then be stored for all future projects. This section of the help file outlines the information required when adding a new control valve to the database.

Figure 1: Data Entry for a Control Valve.

Name: Allows you to enter a descriptive name for this element.

Manufacturer: The name of the valve manufacturer can be entered here.

Materials: The materials used to manufacture the valve may be defined in this field. Options include: Brass, Copper, Steel, etc.

Applications: This option allows you to list the specific applications in which the valve may be used. Options include: Chemical, Power, etc.

Max Operating Pressure: If there is a maximum pressure rating for the control valve you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

Size: This refers to the diameter of the valve opening.

Size Unit: This refers to the diameter/size units used in the above entry.

Usage: If there are specific uses for the new control valve they should be selected here. Uses include: Steam, Liquids, Gases, Flow Control, Pressure Control, etc.

Xt-Pressure Loss Ratio Factor: The pressure drop ratio (choked flow ratio) for gases (Xt) is used to predict the choking point where additional pressure drop (produced by lowering the downstream pressure) will not produce additional flow due to the sonic velocity limitation across the vena contracta (choked flow). This factor is a function of the valve geometry and varies similarly to FL, depending on the valve type. The value of Xt is determined experimentally and supplied by the valve manufacturer.

FL-Liquid Pressure Recovery Factor: The pressure recovery factor (FL) predicts the amount of pressure recovery that will occur between the vena contracta and the valve outlet. FL is an experimentally determined coefficient that accounts for the influence of the valve's internal geometry on the maximum capacity of the valve. It is a function of the direction of flow through the valve, the valve position, and whether the valve has a full or reduced seated trim. The value of FL can be obtained from the manufacturer.

High FL values indicate low pressure recovery and low FL values are an indication of high pressure recovery. Higher FL values result in better resistance to cavitation.

Fs-Laminar Flow Factor: Laminar flow factor is a correction factor applied to the pressure drop of the valve when the flow is in the laminar region.

Fd-Valve Style Modifier: Valve style modifier applied to the standard equations depending on the type of valve (butterfly, gate, globe, etc.). The value of Fd can be obtained from the manufacturer.

Defined By: The valve performance curve characteristic can be defined as either Cv or Kv. Users can choose from the units as shown in Figure 2.

Control ValveIN Curve

Figure 2: Data Entry for a Control Valve Curve Characteristic.

Curve Data: The valve curve coordinates can be defined in this field. Simply enter the coordinates as provided by the manufacturer in the columns on the left hand side. FluidFlow will automatically create the curve-fit once a minimum of three coordinates have been defined.

Notes:

- By default, the software displays one row for % Open vs. Cv(Cv usgpm/psi) units in the "Curve Fit" editor. Use the "Down Arrow" key or Select "ADD" if you need to create additional rows for the curve coordinates.

- The coordinate values must be entered directly into the cells. coordinates cannot be copied from other software tools and pasted into the FluidFlow "Curve Fit" editor.

Control ValveIN Curve Coords

Figure 3: Data Entry for a Control Valve Curve Coordinates.

Note, users can select the most accurate curve-fit and equation order from the top left hand corner of the Curve Fit dialog. It is also important to set the Min & Max Limits as these will form the basis of any warning generated when the valve is solved in a system, i.e if we solve a system such that the operating point for the valve is outside the min and max limits, we will get a warning in the Messages tab to that effect.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Check Valves

FluidFlow contains a database of check valves which can be used when building a network. The user can also very easily add new check valves to the database for specific modelling applications. Note, you only need to add a component to the database once - it will then be stored for all future projects.

To access this database, select the Database | Check Valves menu item:

Check Valve Databases v3.33

Actions

Add

Add a new check valve to the database.

Delete

Delete the currently selected check valve record from the database.

Note: There are certain records, added by Flite, that you will not be able to delete.

Clone

Makes a copy of the currently selected check valve record and adds it to the database. For example: cloning 'Angle Swing Check' will result in a new record 'Angle Swing Check (2)'.

Note: This action is only available via the context menu when you right-mouse click on the current record.

Import

Import check valve records from a FluidFlow2 database.

Load

Loads a ".comp" file - containing a check valve record - and adds it to your current database. See 'Save' below for more information.

Save

Saves the currently selected check valve record as a ".comp" file type.

This means that if you have created a new check valve in your local database (stored on your "DATA" Folder), you can save the check valve file and share with another user. The user can then use the "Load" button to select the file and add the new check valve data to their local database.

Check Valve Data Entry

Name

A descriptive name for this element.

Manufacturer

The name of the check valve manufacturer.

Materials

The materials used to manufacture the check valve may be defined in this field, e.g., Steel, Stainless Steel, Bronze, etc.

Applications

The specific applications in which the check valve may be used, e.g., Chemical, Power, etc.

Max Operating Pressure

If there is a maximum pressure rating for the check valve you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit

The pressure units used when defining the Max Operating Pressure.

Defined By

There are three possible entries for this field:

§Kf Value (Ed Len in diameters). Represents the pressure loss coefficient expressed as equivalent length in terms of pipe diameters. This definition is used almost exclusively by Crane.

§K Value (# Velocity Heads). Represents the pressure loss coefficient expressed as a function of velocity head.

§Idelchik Allows you to select the Idelchik pressure loss relationships as the method to be used for calculating the pressure loss through a check valve.

K or Kf Value

This is where users can enter a value of K or Kf based on the selection made for 'Defined By' as described above.

Min Open Velocity x V^0.5

This the minimum fluid velocity that must pass through the valve for it to be fully open, i.e., the pressure loss relationships hold. It is a value which is provided by the vendor and as such, it is recommended that this value is obtained from the supplier. However, if this is not possible, you can enter a low value such as 0.3 m/s as this parameter is only used to enunciate a warning message if the check valve is not fully open under the modeled operating conditions.

Note: 'Min Open Velocity x V^0.5' is often described as V MIN in vendor technical datasheets.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Gas Regulators

FluidFlow allows users to add gas regulators to the database for specific modelling applications. Note, you only need to add a component to the database once. It will then be stored for all future projects.

To access this database, select the Database | Gas Regulators menu item:

Actions

Add

Add a new regulator to the database.

Delete

Delete the currently selected regulator record from the database.

Note: There are certain records, added by Flite, that you will not be able to delete.

Clone

Makes a copy of the currently selected regulator record and adds it to the database. For example: cloning 'FC EZR 2 60%' will result in a new record 'FC EZR 2 60% (2)'.

Note: This action is only available via the context menu when you right-mouse click on the current record.

Load

Loads a ".comp" file - containing a regulator record - and adds it to your current database. See 'Save' below for more information.

Save

Saves the currently selected regulator record as a ".comp" file type.

This means that if you have created a new regulator in your local database (stored on your "DATA" Folder), you can save the regulator file and share with another user. The user can then use the "Load" button to select the file and add the new regulator data to their local database.

Gas Regulator Data Entry
Name | A descriptive name for this element.
Manufacturer | The name of the regulator manufacturer.
Materials | The materials used to manufacture the regulator may be defined in this field, e.g., Steel, Stainless Steel, Bronze, etc.
Applications | The specific applications in which the regulator may be used, e.g., Chemical, Power, etc.
Max Operating Pressure | If there is a maximum pressure rating for the regulator you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.
Operating Pressure Unit | The pressure units used when defining the Max Operating Pressure.
Min Pressure Differential | The minimum pressure differential for the regulator should be entered here. If the calculated pressure differential is lower than the min value entered here, FluidFlow will enunciate a warning.
Max Pressure Differential | The maximum pressure differential for the regulator should be entered here. If the calculated pressure differential is higher than the max value entered here, FluidFlow will enunciate a warning.
Differential Pressure Unit | The pressure units used when defining the Min & Max differential Pressure.
Regulator Size | This refers to the diameter of the regulator opening.
Size Unit | This refers to the diameter/size units used in the above entry.
Regulator Equation | There are two options to choose from: §ISA Standardized §Universal Traditional
Cv (gpm/psi) | The Cv value as provided by the regulator manufacturer.
Xt Pressure Drop Ratio Factor | The pressure drop ratio (choked flow ratio) for gases (Xt) is used to predict the choking point where additional pressure drop (produced by lowering the downstream pressure) will not produce additional flow due to the sonic velocity limitation across the vena contracta (choked flow). This factor is a function of the regulator geometry and varies depending on the regulator type. The value of Xt is determined experimentally and supplied by the valve manufacturer. Note: This is visible only when the selected 'Regulator Equation' is 'ISA Standardized'.
Cg Gas Sizing Coefficient | The value for Cg is provided by the regulator manufacturer. Note: This is visible only when the selected 'Regulator Equation' is 'Universal Traditional'.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


General Resistances

FluidFlow contains a database of General Resistance elements which can be used to represent any fitting or device when building a network. The user can also supplement this database by adding new resistance elements and values.

There are five categories of general resistance elements: 1) Inline Filter; 2) K [Pressure Loss Coefficient]; 3) Kf [Eq len in pipe diameters]; 4) Kv [Flow Coefficient]; and 5) User Defined Generic.

To access the General Resistances database, select: Database | General Resistances. This opens the Database Editor - General Resistances dialog as shown in Figure 1. Figure 1 outlines the data entry for a round wire screen filter.

Gen Res Inline Filter - v3.37

Figure 1: General Resistances Database.

Name: Allows you to enter a descriptive name for the element.

Max Operating Pressure: If there is a maximum pressure rating for the general resistance element you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

Curve Data: The valve curve coordinates can be defined in this field. Simply enter the coordinates as provided by the manufacturer in the columns on the left hand side. FluidFlow will automatically create the curve-fit once a minimum of three coordinates have been defined.

Figure 2 provides an overview of the data entry for the round wire screen filter curve-fit.

Gen Res Inline Filter Curve - v3.37

Figure 2: Inline Filter Curve-Fit Data Entry.

Curve Fit Type: You can select the most accurate curve-fit from the top left corner of the dialog. There are three choices available: 1) Polynomial, 2) Log Log and 3) Log Polynomial.

K [Pressure Loss Coefficient]

Figure 3 provides an overview of the data entry for a K [Pressure Loss Coefficient] element.

Gen Res K - v3.37

Figure 3: K [Pressure Loss Coefficient].

Name: Allows you to enter a descriptive name for the element.

Max Operating Pressure: If there is a maximum pressure rating for the general resistance element you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

K Value: Product manufacturer's often provide a single K value for a given pipe fitting (valve, nozzle, etc.). You can enter this value here.

Kf [Eq len in pipe diameters]

Figure 4 provides an overview of the data entry for a Kf [Eq len in pipe diameters] element.

Gen Res Kf - v3.37

Figure 4: Kf [Eq len in pipe diameters].

Name: Allows you to enter a descriptive name for the element.

Max Operating Pressure: If there is a maximum pressure rating for the general resistance element you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

Kf Value: Product manufacturer's often provide a single Kf value for a given pipe fitting (valve, nozzle, etc.). You can enter this value here.

Kv [Flow Coefficient]

Figure 5 provides an overview of the data entry for a Kv [Flow Coefficient] element.

Gen Res Kv - v3.37

Figure 5: Kv [Flow Coefficient].

Name: Allows you to enter a descriptive name for the element.

Max Operating Pressure: If there is a maximum pressure rating for the general resistance element you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.

Pressure Unit: The pressure units used when defining the Max Operating Pressure.

Flow: The flow used to define the pressure loss data for a Kv element. This flow corresponds with the pressure loss at this flow.

Flow Unit: The flow unit that defines the flow data. You can use mass or volumetric flow units.

Pressure Drop: The pressure loss that exists at the flow specified above.

Pressure Drop Unit: The pressure loss unit that defines the pressure loss. You can use pressure or head loss units.

Reference Density: The density of the fluid was used to obtain the flow and pressure loss data.

Density Unit: The units of density of the reference or test fluid.

Exponent: This is the exponent used to scale the reference pressure drop and flow. Normally the pressure loss is a function of flow squared and so this exponent is 2. For some complex/specialized equipment this may be slightly different from 2. If you have two pressure loss and flow readings you can adjust this exponent so that the curve passes exactly through your experimental data.

Design Notes: If you have a full pressure loss curve relationship for your fitting, a sensible reference coordinate for the Kv node would be a midpoint coordinate on the Flow vs. Pressure loss curve. FluidFlow will then automatically scale up or down depending on the actual flow experienced in the system. Equipment data sheets are also usually provided with details of the reference fluid density (typically water or air depending on the fitting). This therefore allows us to define all required parameters for the Kv element.

User Defined Generic Element

Note, the information for the User Defined Generic element is defined directly on the Input Inspector on the Data Palette and as such, a database for this specific element is not required.

FluidFlow allows users to model Non-Standard pipe or duct fittings using the "User Defined Generic" node user defined which is available from the "General Resistances" tab on the Component Palette.

This node tends to be more accurate than the Kv node as when using this node we need to define the manufacturer's curve relationship for the fitting. The Kv node by comparison, only requires a single point on the curve. FluidFlow then scales up or down accordingly based on the actual system flow rate.

This section will demonstrate how to develop the full curve relationship for a flame arrester using the User Defined Generic node and model the pressure loss relationship in a network. Details of the flame arrester pressure loss are set out in Figure 6.

Figure 6: Flame Arrester Model DN 150 / 6".

The first step is to define a number of coordinates from the relevant curve (Flame Arrester Model DN 150 / 6") into a table in MS Excel. From this table, create a graph plot of the curve (Insert | Scatter | Scatter with only markers). Right mouse-click on the coordinates and select Add Trendline. A new dialog will appear titled Format Trendline. Click through each of the trendline/curve-fit options taking care to select the curve which best reflects the coordinate positions. Place a check mark in the option for Display the Equation on the chart. Finally, select OK.

It is important that the user gives careful consideration to selecting the appropriate curve fit in Excel, in this case, the Power Law curve fit has been selected. Figure 7 provides details of this data entry.

flame arrester excel sheet

Figure 7: Excel Graph Plot for Flame Arrester Model DN 150 / 6".

The variables derived from the excel equation are those which may now be defined in FluidFlow (see Figure 3). Note, ensure the flow and pressure loss units are set to m3/h and mbar as per the manufacturer's curve data.

flame arrester generic user defined

Figure 8: Data Entry for User Defined Generic Node.

Now the User Defined node has been fully defined, we can build a few sample models using different flow rates to test the accuracy. Figure 9 provides details of the test models. We can see that the calculated friction loss values compare well with those set out in the manufacturer's datasheet illustrated in Figure 1.

flame arrester test models

Figure 9: Test Models using different design flow rates.

Add: This button allows you to add a new general resistance component to the database.

Delete: This button allows you to delete a general resistance component record from the database.

Load: You can load a ".comp" file to the "DATA" Folder stored on your local PC or network if another user has saved (see step described below) and shared their general resistance component data with you.

Save: This option allows you to save a general resistance component ("clone") as a ".comp" file type. This means if you have created a new general resistance component in your local database (stored on your "DATA" Folder), you can save the general resistance component file and share with another user. The user can then save the .comp file to their local PC, select the "Load" button which will load-in the new general resistance component file data to their local database.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Relief Devices

FluidFlow contains a database of relief devices that can be used when building a network. The user can choose from either a relief valve or a bursting disk relief device. New devices can also be easily added to the software database.

When using database components, it is good practice to check with the manufacturer to ensure the values entered match the current test data available.

To access this database, select the Database | Relief Devices menu item:

Relief Valve Database v3.37

Actions

Add

Add a new relief valve to the database.

Delete

Delete the currently selected relief valve record from the database.

Note: There are certain records, added by Flite, that you will not be able to delete.

Clone

Makes a copy of the currently selected relief valve record and adds it to the database. For example: cloning 'JBS' will result in a new record 'JBS (2)'.

Note: This action is only available via the context menu when you right-mouse click on the current record.

Import

Import relief valve records from a FluidFlow2 database.

Load

Loads a ".comp" file - containing a relief valve record - and adds it to your current database. See 'Save' below for more information.

Save

Saves the currently selected relief valve record as a ".comp" file type.

This means that if you have created a new relief valve in your local database (stored in your "DATA" Folder), you can save the relief valve file and share it with another user. The user can then use the "Load" button to select the file and add the new relief valve data to their local database.

Relief Valve Data Entry

Name

A descriptive name for this element.

Manufacturer

The name of the relief valve manufacturer.

Materials

The materials used to manufacture the relief valve may be defined in this field, e.g., Steel, Stainless Steel, Bronze, etc.

Applications

The specific applications in which the relief valve may be used, e.g., Chemical, Power, etc.

Inlet Size

Diameter of the valve inlet.

Outlet Size

Diameter of the valve outlet.

Size Unit

Diameter/size units used in the two entries above.

Valve Type

There are three options to choose from:

§Standard

§Balanced Bellows

§Pilot Operated

Usage

Allows you to define the type of systems where the relief device may be used. There are three options to choose from: Gases, Liquids, and Steam.

Design Coefficient (Kd)

This is the ratio of measured relieving capacity to the theoretical relieving capacity, i.e., Actual Flow Capacity/Theoretical (Ideal) Flow Capacity.

The actual mass flow rate through the relief valve is diminished from the theoretical value by the existence of a fluid boundary layer. Therefore, a "discharge coefficient" (Kd) is applied to the theoretical value required to obtain the actual flow rate.

Max Backpressure (%)

In a conventional relief valve application, built-up back pressure should not exceed 10% of the set pressure at 10% allowable overpressure. A higher maximum allowable built-up back pressure may be used for allowable overpressures greater than 10% provided the built-up back pressure does not exceed the allowable overpressure. Note, check this value with the relief valve manufacturer's data sheets.

Refer to API 520 for further information.

Bursting Disk Data Entry
Name | A descriptive name for this element.
Manufacturer | The name of the bursting disk manufacturer.
Materials | The materials used to manufacture the bursting disk may be defined in this field, e.g., Steel, Stainless Steel, Bronze, etc.
Applications | The specific applications in which the bursting disk may be used, e.g., Chemical, Power, etc.
Usage | Allows you to define the type of systems where the bursting disk may be used. There are three options to choose from: Gases, Liquids, and Steam.
Certified Resistance Coefficient (Kr) | The resistance of the bursting disk is modelled using a certified resistance coefficient "Kr". The flow resistance for bursting disk devices can be obtained from the manufacturer. The flow resistance is expressed in terms of velocity head loss "Kr". ASME Code certified values should be used where available.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Size Change

FluidFlow contains a database of standard "size change" components (pipe reducers) which can be used when building a network. The user may also create new "size change" components for specific applications.

To access this database, select the Database | Size Change menu item:

Size Change v3.37

Actions
Add | Add a new entry to the database.
Delete | Delete the currently selected record from the database. Note: There are certain records, added by Flite, that you will not be able to delete.

Size Change Data Entry
Name | Descriptive name for the entry.
Dimension Unit | Units used when defining the element length and connection sizes.
Length or Reducing Section | Overall length of the reducer element.
Maximum Large Connection Size | The maximum connection size for the reducer element.
Max Operating Pressure | If there is a maximum pressure rating for the element you should enter this value here. Leaving the value at 0 means that FluidFlow will not make an overpressure check.
Pressure Unit | The pressure units used when defining the Max Operating Pressure.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Fluids

FluidFlow contains a comprehensive database of over 1,280 fluids enabling you to quickly model fluid transportation systems. You can also add new fluids to the software database and also create fluid mixtures.

The section below describes how you can add new fluids and create new fluid mixtures.

Fluids Database:

The physical properties for water are predefined in the fluids database to IAPWS (International Association for the Properties of Water and Steam) standards.

Users can choose from five options when adding a new fluid to the Database: 1) Simple Newtonian, 2) Pure Newtonian, 3) non Newtonian Liquid, 4) Gas (No Phase Change) & 5) Petroleum Fraction or Crude.

1) Simple Newtonian: This option is useful when we have limited fluid physical property data available. When adding a new Simple Newtonian Fluid to the database, we only need to define the physical properties as outlined in Figure 1.

When adding a new fluid to the database,we need to ensure the "Light Bulb" icon on the bottom left corner of the Fluid Editor dialog is illuminated (See Figure 1 below). This light bulb will only become illuminated when all the key fluid physical properties have been fully defined. For instance, if we don't have the physical property data for the Liquid Specific Heat or Liquid Thermal Conductivity and we leave these parameters undefined, although the fluid might appear in the database on the left hand side, the "Light Bulb" icon will remain off. This means that the fluid is only partially defined and if you try to select this fluid for a boundary node from the input tab, it will not be available.

The Liquid Specific Heat and Liquid Thermal Conductivity are only required if we are performing heat transfer analysis. If you are not completing a heat transfer calculation as part of your model, you can accept the default values (that of water) offered by FluidFlow. When all fluid physical properties are fully defined, the "Light Bulb" icon will illuminate automatically meaning the fluid is now available to model in a system.

Note, a Simple Newtonian fluid is only suitable for liquid phase flows with no phase change. As only the liquid physical properties are defined, only the Liquid "Light Bulb" icon appears illuminated.

Fluid - Simple Newtonian

Figure 1: Data Entry for Simple Newtonian Fluid.

2) Pure Newtonian: FluidFlow is provided with an extensive database of Pure Newtonian fluids as standard. Figure 2 provides details of the physical property data required when defining a fluid as Pure Newtonian.

If you wish to model a piping system in which the fluid may experience changes in phase state, it is recommended the system is assigned with a Pure Newtonian fluid. FluidFlow will then automatically determine the fluid phase state throughout the system based on the operating pressures, temperatures and engineering conditions which apply.

Note, in Figure 2 the "Light Bulb" icon is illuminated for Liquid, Gas & 2 Phase as the physical properties for this sample fluid (diethyl disulfide) are fully defined. This therefore denotes that this particular fluid can be modeled as liquid, gas or two phase.

Fluid - Pure Newtonian

Figure 2: Data Entry for Pure Newtonian Fluid.

3) non Newtonian Liquid: To accurately predict friction loss and system operating conditions for non-Newtonian fluid flow in pipelines, good laboratory data is required. The fluid data-entry requirements are shown in Figure 3.

Fluid - non Newtonian

Figure 3: Data Entry for non-Newtonian Fluid.

Thermodynamic Properties: In designing slurry pipelines, it is more often the case that a heat transfer calculation is not required, and hence thermodynamic properties are rarely available. However, FluidFlow will only allow access to a fluid in the database when it is fully defined – i.e., these physical property fields cannot be left undefined even though the values are not used for calculation purposes. If the heat transfer calculation is not required, then it is recommended that the default values are accepted. If the intention is to perform heat transfer calculations then this data must be entered correctly.

Vapor Pressure: Again it's unlikely that specific data will be available and so, FluidFlow Slurry provides the option of simply selecting the pre-set values for water. Remember, vapor pressure does not contribute to friction loss and is only important where system pressure falls below vapor pressure.

Liquid Viscosity Definition: The FluidFlow Slurry Module allows you to enter the relationship of a fluid's shear-dependent viscosity according to four rheology (curve-fit) models. These include: Power Law, Hershel Bulkley, Casson & Bingham Plastic. Engineering judgment must be applied to select the appropriate rheology curve-fit model based on the available data. Once you have defined the shear stress-shear strain curve coordinates, you can click-through each of the four curve fit options, taking care to select the most suitable relationship.

4) Gas (No Phase Change): Users can also add new fluids to the database where the phase state is fixed to gas. An example of such a fluid from the database is Steam (Figure 4).

Fluid - no phase change

Figure 4: Data Entry for Gas (No Phase Change).

5) Petroleum Fraction or Crude: Users can add pseudo-component fluids to the database and model in piping systems. When adding a new pseudo-component fluid, simply define the True Boiling Point (TBP) or ASTM curve along with the fluid density and FluidFlow will automatically determine all fluid physical properties (refer to the fluid physical properties contained within the red box in Figure 5). Note, when entering the fluid data, the density of the fluid should be entered at a temperature of 288.65 K.

Figure 5: Data Entry for Petroleum Fraction or Crude.

Note, if you have the fluid True Boiling Point curve data, this can be entered into the database in which case, FluidFlow will automatically generate the ASTM D86 curve plot. If you define the ASTM D86 curve in the database, the software will automatically generate the True Boiling Point curve.

The correlation used in FluidFlow for interconversion between ASTM D86 and True Boiling Point is:

TBP = a(ASTM D86)b

where a and b are constants varying with the percent of liquid distilled.

Figure 6 provides an illustration of the two curves (ASTM D86 & TBP) as developed by FluidFlow.

PetroleumFractionFluid ASTM & TBP

Figure 6: ASTM D86 & True Boiling Point Curve for Gas Oil (Heavy Distillate).

In determining the fluid physical properties, FluidFlow also determines the Volume Average Boiling Point (VABP), Watson K factor and MeABP. The correlations used to estimate these properties are as follows:

VABP = T10 + T30 + T50 + T70 + T90 / 5.

where all temperatures are in oF.

Watson K factor = (MeABP)1/3 / SG.

where MeABP = VABP - Δ.

where Δ is determined from the equation:

ln Δ = -0.94402 - 0.00865(VABP - 32)0.6667 + 2.99791 SL0.333.

where SL = T90 - T10 / 90 - 10.

Using the above correlations, FluidFlow automatically determines all fluid physical properties required in order to successfully model the feedstock in the network.

The production copy of the fluids database includes a number of pseudo-component fluids such as: gasoline, gas oil, kerosene, diesel oil, etc.

Fluid Mixtures.

Fluid mixtures may also be created in FluidFlow by choosing from two methods: 1) Database Mixtures and 2) Flowsheet Mixtures.

Database Mixtures

New fluid mixtures can be created using fluids already defined in the software database. Gas Mixtures can be defined by weight % or by mole % (volume %). To create a new mixture select: Database | Fluids | New Mix and then choose from the fluids available in the Fluid Editor dialog.

Note, care should be taken to ensure the Percent Sum of the mixture is exactly 100 % otherwise you will not be able to model the fluid in a system.

Flowsheet Mixtures

Fluid mixtures can also be created dynamically on the flowsheet by adding new fluids to a network using either a Known Flow or Known Pressure node. Figure 7 shows how methanol, ethanol, butanol and nonanol are mixed dynamically on the flowsheet and the software automatically calculates the composition mass % for each component in the system. Mixtures - 4 Alcohols

Figure 7: Creating fluid mixtures dynamically on the flowsheet.

The section below describes the options available on the "Fluid Editor" form as shown in Figure 1.

View: Users can customize the display of the fluid list. There are two options to choose from: 1) Show Chemical Names and 2) Show Alternative Names. When we select "Show Chemical Names", the fluids are displayed based on the data stored in the "Formula" field (Figure 1). When we select "Show Alternative Names", the fluids are displayed based on the data stored in the "Alternative Names" field.

Filter: Users can filter the fluid types displayed in the Fluid Editor by choosing any of the five available options: 1) Pure Newtonian, 2) Simple Newtonian, 3) Non Newtonian, 4) Gas (No Phase Change) or 5) Petroleum Fraction or Crude. Setting the filter to "Pure Newtonian" means only Pure Newtonian fluid types will be shown. Setting the filter to "Simple Newtonian" means only Simple Newtonian fluid types will be shown. This approach can be applied to any of the five fluid types.

Search: This allows you to search the fluid list for a particular fluid name.

New Mix: This button allows you to create a new fluid mixture using the fluids which already exist in the database. Note, if you are creating a new mixture and one of the component fluids doesn't already exist in the fluids database, you can add this new component fluid to the database and then assign to your new mixture. The approach required to add a new fluid mixture to the database is described in further detail above.

Add: This button allows you to add a new fluid to the database. The approach required to add a new fluid to the database is described in further detail above.

Delete: This button allows you to delete a fluid record from the database.

Load: You can load a ".fluid" file to the "DATA" Folder stored on your local PC or network if another user has saved (see step described below) and shared their fluid data with you.

Save: This option allows you to save a fluid ("clone") as a ".fluid" file type. This means if you have created a new fluid in your local database (stored on your "DATA" Folder), you can save the fluid file and share with another user. The user can then save the .fluid file to their local PC, select the "Load" button which will load-in the new fluid file data to their local database.


Manufacturers

FluidFlow contains a database of components which are based on technical data provided by different manufacturers. The software therefore includes a Manufacturers database which can be extended when new components are added to the software by the user.

The Manufacturers database can be accessed via the Database | Manufacturers menu item:

Manufacturers Database v3.37

Actions
Add | Add a new entry to the database.
Edit | Edit the name of the selected record.
Delete | Delete the selected record from the database. Note: There are certain records, added by Flite, that you will not be able to delete.


Materials

FluidFlow contains a comprehensive database of pipe materials: steel, stainless steel, cast iron, ABS, etc. New pipe materials can be added to the software by the user via the Database | Materials menu item:

Materials Database v3.37

Actions
Add | Add a new entry to the database.
Edit | Edit the name of the selected record.
Delete | Delete the selected record from the database. Note: There are certain records, added by Flite, that you will not be able to delete.


Applications

FluidFlow contains an extensive database of components, all of which have specific applications. For example, when adding a new pump to the database, the pump may only be suitable for cooling water circuits, building services, chemical processes, etc. These options (aka "applications") can therefore be checked off when adding this component to the database.

The Applications database can be accessed by selecting the Database | Applications menu item:

Applications Database v3.37

Actions
Add | Add a new entry to the database.
Edit | Edit the name of the selected record.
Delete | Delete the selected record from the database. Note: There are certain records, added by Flite, that you will not be able to delete.


Insulation Materials

FluidFlow contains a database of insulation types. The thermal conductivity data for each type is defined within the database and is included when carrying out pipe/duct heat transfer calculations.

New insulation types can be added to the database by the user.

Figure 1 provides an overview of the insulation thermal conductivity database which can be accessed by selecting: Database | Insulation Materials Thermal Conductivity.

Insulation Materials Database v3.37

Figure 1: Insulation Materials Thermal Conductivity Database.

Actions
Add | Add a new entry to the database.
Delete | Delete the currently selected record from the database. Note: There are certain records, added by Flite, that you will not be able to delete.

Data Entry
Insulation Name | Descriptive name for the insulation material.
Insulation Definition | There are three possible definitions: §Undefined §Fixed Value §Table
Conductivity | Value for material thermal conductivity which will be used in pipe heat transfer calculations. Note: Visible only when 'Fixed Value' is selected for 'Insulation Definition'.
Conductivity Unit | Refers to the units used to specify the conductivity value. Note: Visible only when 'Fixed Value' is selected for 'Insulation Definition'.
Table | Defines a table of values for thermal conductivity vs. temperature. Figure 2 provides an example of aerogel which has been defined using values for thermal conductivity vs. temperature. Note: Visible only when 'Table' is selected for 'Insulation Definition'.

Insulation Materials Curve v3.37

Figure 2: Thermal Conductivity Curve-Fit.

To create the curve-fit, simply enter the coordinates as provided by the manufacturer in the columns on the left hand side. FluidFlow will automatically create the curve-fit once a minimum of three coordinates have been defined.

Curve Fit Data Entry
Curve Fit Type | There are two options to choose from: Linear and Polynomial.
Equation Order | There are a number of options available including: Linear, Quartic, Cubic, etc.
Temperature Unit | Refers to the unit of temperature that is used to specify the temperature value.
Thermal Conductivity Unit | Refers to the units that are used to specify the thermal conductivity values.

If any of the above is unclear, or you require any further information, please contact us at: support@fluidflowinfo.com.


Pipe Materials Thermal Conductivity

FluidFlow contains an extensive database of pipe material types. The thermal conductivity data for each type is defined within the database and is included when carrying out pipe/duct heat transfer calculations.

Figure 1 provides an overview of the pipe material types which can be accessed by selecting the Database | Pipe Materials Thermal Conductivity menu item:

Pipe Material Therm Cond v3.37

Figure 1: Pipe Materials Thermal Conductivity Database.

Data Entry
Insulation Name | Descriptive name for the entry.
Insulation Definition | There are three possible definitions: §Undefined §Fixed Value §Table
Conductivity | Value for pipe thermal conductivity which will be used in pipe heat transfer calculations. Note: Visible only when 'Fixed Value' is selected for 'Insulation Definition'.
Conductivity Unit | Refers to the units used to specify the conductivity value. Note: Visible only when 'Fixed Value' is selected for 'Insulation Definition'.
Table | Defines a table of values for thermal conductivity vs. temperature. Figure 2 provides an example of steel which has been defined using values for thermal conductivity vs. temperature. Note: Visible only when 'Table' is selected for 'Insulation Definition'.

Pipe Material Therm Cond Curve v3.37

Figure 2: Pipe Materials Thermal Conductivity Curve-Fit.

To create the curve-fit, simply enter the coordinates as provided by the manufacturer in the columns on the left hand side. FluidFlow will automatically create the curve-fit once a minimum of three coordinates have been defined.

Curve Fit Data Entry
Curve Fit Type | There are two options to choose from: Linear and Polynomial.
Equation Order | There are a number of options available including: Linear, Quartic, Cubic, etc.
Temperature Unit | Refers to the unit of temperature that is used to specify the temperature value.
Thermal Conductivity Unit | Refers to the units that are used to specify the thermal conductivity values.

If any of the above is unclear, or you require any further information, please contact us at: support@fluidflowinfo.com.


Pipe Roughness

FluidFlow contains extensive information on roughness data for each type of pipe material ranging from "Clean and New" to "Heavily Corroded". This data can be used when modelling piping systems or, alternatively, you may choose to enter your own specific values based on available pipe material knowledge.

Figure 1 provides an overview of the database of pipe roughness categories which can be accessed by selecting the Database | Pipe Roughness menu item.

Pipe Roughness Database v3.37

Figure 1: Pipe Roughness Database.

Actions
Add | Add a new roughness entry (for the selected Material) to the database.
Delete | Delete the currently selected roughness record from the database. Note: There are certain records, added by Flite, that you will not be able to delete.

Data Entry
Description | Descriptive name for the roughness value.
Absolute Roughness | Value for the roughness of the inside surface of the pipe wall. This absolute roughness value is used to determine the pipe relative roughness when performing pipe pressure loss calculations.
Roughness Unit | Refers to the units used to specify the roughness value.

If any of the above is unclear, or you require any further information, please contact us at: support@fluidflowinfo.com.


Sizing Data

This database contains equipment and pipe sizing data that is used to calculate the "Economic Pipe Velocity" and the exact economic pipe size.


Pipe Scaling

FluidFlow contains a database of scaling factors for each type of pipe material which can be used when modelling existing systems. There are four options to choose from: None, Low, Medium & Heavy. You may choose not to use the database scaling factors and enter your own specific values based on available system knowledge.

Figure 1 provides an overview of the database of pipe scaling categories which can be accessed by selecting: Database | Pipe Scaling.

pipe scaling v3.37

Figure 1: Pipe Scaling Database.

Actions
Add | Add a new scaling entry (for the selected Material) to the database.
Delete | Delete the currently selected scaling record from the database. Note: There are certain records, added by Flite, that you will not be able to delete.

Pipe Scaling Data Entry
Description | Descriptive name for the scaling value.
Scaling Factor | The % value for the scaling of the inside surface of the pipe wall.

If any of the above is unclear, or you require any further information, please contact us at: support@fluidflowinfo.com.


Backing Up and Restoring Data

Use the Database | Data | Backup Data menu item to make a backup of the contents of your current DATA folder. When prompted, select a location to backup your DATA folder to.

Use the Database | Data | Restore Data menu item to restore a previously made backup. The restoration process is made to the currently connected DATA folder. This means you will overwrite the currently connected database so make sure this is what you intend before using this option.


Scripting

The Scripting Module allows you to make changes to any flowsheet element (node or pipe) via a Pascal (or BASIC)-based scripting language and study the effects of these changes at any other flowsheet element(s). In this way you can study how any flow system behaves at start up, shut down, as conditions change, or study various design scenarios. The effects of changes can be sent to tables, to charts, or exported to other applications. Scripts are attached to each flowsheet and you can access all elements in the flowsheet via the script editor as well as global application objects.

The following pages describe:

§ User Interface

§ Language Overview

§ Example Scripts

§ References


User Interface

Navigation: Scripting >

Return to chapter overview

User Interface - Scripting

The Scripting Module's User Interface is made up of four sections:

§ Scripting Window

§ Results Window

§ Menus

§ Dialogs


Scripting Window

The Scripting Window is made up of an area for entering code and five pages used for debugging scripts: Messages, Breakpoints, Watches, Bookmarks, and Output.

Window

Description

Code

Enter your scripting code here. The left-hand "gutter" displays the code line numbers.

Right-mouse clicking on the Code window will display a context-menu with menu items for editing the code.

Messages

All error messages (whether generated by the script compiler or at runtime by erroneous code) are displayed in a list in the Messages page. If an error occurs you can double-click the Messages entry and the cursor will move to the corresponding line in the Code window.

Right-mouse clicking on the Messages page will display a context-menu that allows you to go to the current source line or clear all messages.

Breakpoints

Breakpoints pause script execution at a specified point in the code. When a breakpoint occurs you can use the Watches and File | Evaluate... menu item to view the state of variables in the script.

Right-mouse clicking on the Breakpoints page will display a context-menu that allows you to enable and disable breakpoints.

Note: You can also set a Breakpoint by clicking the 'Gutter' at the very left of the Code window.

Watches

Watches let you track the values of variables or expressions as you step over or trace into your code. As you step through your script, the value of the watch expression changes if your code updates any of the variables contained in the watch expression.

Right-mouse clicking on the Watches page will display a context-menu that allows you to add, edit, delete, enable, and disable watches.

Bookmarks

You can mark a location in your code with a bookmark and jump directly to it from anywhere in the script. You can set up to ten bookmarks. Bookmarks are preserved when you save the file and are available when you reopen the file.

Right-mouse clicking on the Bookmarks page will display a context-menu that allows you to go to the selected source line or clear all bookmarks.

Output

The Output page is provided for debugging Scripts. In code you can refer to it using the Output object, which will allow you to add to it and save its contents to file.


Results Window

Navigation: Scripting > User Interface >

Return to chapter overview

Results Windows

The Results Window is split into a Table and Chart area. The Table lists all the Result Fields - added via the Configure Results dialog or user-defined in code - and the Chart displays the currently selected Result Field's graph.

Window

Description

Table

For every Result Field that is added (via the Results | Configure... menu item, or by code), a column is added to the Results Table. The contents of the table is updated by the Results.Update routine.

The first field (named '#') is used as a Row identifier. Typically this field will be populated by values such as 1, 2, 3, ..., n which are assigned automatically when Results.Update is called without the NewRowId parameter.

Chart

The values of Result Fields can be plotted on a Chart. Use the Result Field Properties dialog to select whether a field is displayed or not. You can also specify the Chart title, Y-Axis label, X-Axis label, and color.

Note: The Y-axis is the Result Field value; the X-axis plots the '#' field values.


Menus

FluidFlow provides the following menu system for the Scripting Module:

Menus | Description
File | Use the File menu to insert, save, and print scripts (including the Results).
Script | Use the Script menu to compile, debug, and run scripts.
Results | Use the Results menu to select and configure the element (node/pipe) properties you wish to track during script execution.
Edit | The Edit menu buttons, located along the top of the Scripting window, are available for manipulating the text in the Code window. They include: Cut, Copy, Paste, Delete, Select All, Clear All, Goto Line Number, Find, and Replace.


File

Navigation: Scripting > User Interface > Menus >

Return to chapter overview

File Menu

Use the File menu to insert, save, and print.

Commands | Description
Insert From File… | Paste the contents of an external file into the Scripting Code window.
Save To File… | Save the contents of the Scripting Code window to an external file.
Print Content... | Specify the different sections (Code, Results Table, Results Charts) that will be included in the print report. Also use this menu item to specify the page size, page margins, etc.
Print Preview... | Preview the print report before printing.
Print... | Send the print report to the printer.


Script

Navigation: Scripting > User Interface > Menus >

Return to chapter overview

Script Menu

Use the Script menu to compile, debug, and run scripts.

Commands | Description
View | Display the Script window.
Run (Alt+F9) | Compile and execute the script. Any compile-time errors will be listed in the Messages window.
Compile (Alt+F8) | Compile the script. Any compile-time errors will be listed in the Messages window.
Pause | Pause the execution of the script. You can resume execution by clicking on the Run menu item.
Step Over | Execute the current line in the code. If the current line contains a call to a subroutine, it executes the whole subroutine, stopping at the first line after the subroutine.
Trace Into | Execute the current line in the code. If the line contains a call to a subroutine, the execution point goes to the first line of code inside the subroutine.
Show Execution Point | Go to the line number of the current execution point.
Reset | Stop the script execution, regardless of the execution point.
Evaluate… | Evaluate a variable or expression.


Results

Navigation: Scripting > User Interface > Menus >

Return to chapter overview

Results Menu

Use the Results menu to select and configure the element (node/pipe) properties you wish to track during script execution.

Commands | Description
View | Display the Results window.
Configure… | Display the Configure Results dialog to select the element properties you wish to track, and to specify the chart format, if any, you want.
Clear Data | Clear all Result data values.
Delete Results | Delete all Result fields & data values – this will delete all columns and rows in the Results table.


Dialogs

The following pages describe the dialogs used in the Scripting Module:

§ Configure Results Dialog

§ Result Field Properties Dialog


Configure Results Dialog

This dialog allows you to select the element properties you wish to track in code (for example, via the Results.Update routine), and to specify the chart format, if any, you want applied.

To display the Configure Results Dialog:

§Select the Results | Configure... menu item.

The left-hand pane lists all Nodes and Pipes that are in the currently open Flowsheet. The items in green are Input properties, and items in red are Result properties.

The right-hand pane lists all the selected Result Fields. The name of each Result Field is made up of its Element's Id (positive for a Node, negative for a Pipe) and the selected property, e.g., [1].Density is the Density (Result) property for Node 1.

To add a property to the Result Fields, double-click its name in the left-hand pane. You can configure the Result Field by selecting it in the right-hand pane and clicking the 'Properties' button (or by double-clicking the Result Field). This will display the Result Field Properties dialog.


Result Field Properties Dialog

This dialog allows you define the characteristics of Result Fields, specifically, whether you want the field to be displayed in a chart, and if so, what its title, x-axis label, y-axis label, and color will be.

To display the Result Field Properties Dialog:

§Select an item in the Configure Results dialog and click 'Properties'.

§Double-click an item in the Configure Results dialog.


Language Overview (Pascal)

Navigation: Scripting >

Return to chapter overview

Language Overview (Pascal) - Scripting

The FluidFlow Scripting Module executes scripts written in the Pascal syntax. It currently supports the following Pascal and Basic syntax:

§begin .. end constructor

§procedure and function declarations

§if .. then .. else constructor

§for .. to .. do .. step constructor

§while .. do constructor

§repeat .. until constructor

§try .. except and try .. finally blocks

§case statements

§array constructors (x:=[ 1, 2, 3 ];)

§^ , * , / , and , + , - , or , <> , >=, <= , = , > , < , div , mod , xor , shl , shr operators

§Access to object properties and methods (Object.Method and ObjectName.Property)

The following pages describe:

§ Script Structure

§ Identifiers

§ Assign Statements

§ Character Strings

§ Comments

§ Variables

§ Indexes

§ Arrays

§ if Statements

§ while Statements

§ repeat Statements

§ for Statements

§ case Statements

§ Function and Procedure Declarations

§ Exception Handling

§ DLL Functions

Script Structure

A script's structure is made up of two major blocks: a) procedure and function declarations and b) main block. Both of these are optional, but at least one should be present in a script. There is no need for the main block to be within a begin..end. It could be a single statement.

Examples:

// SCRIPT 1:

procedure DoSomething;

begin

 CallSomething;

end;

begin

 CallSomethingElse;

end;

// SCRIPT 2:

begin

 CallSomethingElse;

end;

// SCRIPT 3:

function MyFunction;

begin

 result := 'Ok!';

end;

// SCRIPT 4:

CallSomethingElse;

As in Pascal, statements should be terminated by the ";" character. Begin..end blocks are allowed to group statements.

Identifiers

Identifier names (variable names, function and procedure names, etc.) follow the most common rules in Pascal:

§They must begin with a character (a..z or A..Z), or the '_' symbol.

§They can be followed by alphanumeric characters or the '_' symbol.

§They cannot contain any other character or spaces.

Valid identifiers:

VarName

_Some

V1A2

_____Some____

Invalid identifiers:

2Var

My Name

Some-more

This,is,not,valid

Assign Statements

To assign a value or expression result to a variable or object property, use ":=".

Examples:

MyVar := 2;

Button.Caption := 'This ' + 'is ok.';

Character Strings

Strings (sequence of characters) are declared by using the single quote (') character. Double quotes (") are not used. You can also use #nn to declare a character inside a string, where nn refers to the ASCII code of a character. There is no need to use '+' operator to add a #nn character to a string.

Examples:

A := 'This is a text';

Str := 'Text ' + 'concat';

B := 'String with CR and LF char at the end'#13#10;

C := 'String with '#33#34' characters in the middle';

Comments

Comments can be inserted inside scripts using the // characters or (* *) or { } blocks. Using the // characters the comment will finish at the end of line.

Examples:

//This is a comment before ShowMessage

ShowMessage('Ok');

(* This is another comment *)

ShowMessage('More ok!');

{

And this is a comment

with two lines }

ShowMessage('End of okays');

Variables

You can declare variables using the var directive and its name. It is optional as to whether you include the variable's type in its declaration.

Examples:

// SCRIPT 1:

procedure Msg;

var S;

begin

 S := 'Hello world!';

 ShowMessage(S);

end;

// SCRIPT 2:

var A;

begin

 A := 0;

 A := A + 1;

end;

// SCRIPT 3:

var S: string;

S := 'Hello World!';

ShowMessage(S);

Note you do not need to actually use the var directive, as variables are implicitly declared. The directive is provided to allow clarity in the script.

Indexes

Strings, arrays, and array properties can be indexed using the "[" and "]" characters. For example, if Str is a string variable, the expression Str[3] returns the third character in the string, while Str[I + 1] returns the character immediately after the one indexed by I.

Examples:

MyChar := MyStr[2];

MyStr[1] := 'A';

MyArray[1,2] := 1530;

Lines.Strings[2] := 'Some text';

Arrays

Scripting supports array constructors and variant arrays.

To construct an array, use the "[" and "]" characters. You can construct a multi-dimensional (multi-indexed) array nesting array constructors. You can then access arrays using indexes. If an array is multi-indexed, separate the indexes using ",".

If a variable is a variant array, the Scripting Module automatically supports indexing in that variable. A variable is a variant array if it was assigned using an array constructor or if it was created using the VarArrayCreate procedure.

Note: Arrays are zero-based, i.e., they are indexed from 0.

Examples:

NewArray := [2, 4, 6, 8];

Num := NewArray[1]; // Num receives "4"

// Create a 2-dimensional array

MultiArray := [['green','red','blue'] , ['apple','orange','lemon']];

Str := MultiArray[0,2]; // Str receives 'blue'

Str := MultiArray[1,0]; // Str receives 'apple'

MultiArray[1,1] := 'pineapple'; // Replace 'orange' with 'pineapple'

if Statements

There are two forms of the if statement: if...then and if...then...else. In the case that the if expression is true, the statement (or block) after it is executed. If there is an else part and the expression is false, the statement (or block) after the else is executed.

Examples:

if J <> 0 then Result := I / J;

if J = 0 then Exit else Result := I / J;

if J <> 0 then

begin

 Result := I / J;

 Count := Count + 1;

end

else

 Done := True;

while Statements

A while statement is used to repeat a statement or a block, while a control condition is evaluated as true.

The control condition is evaluated before the statement. Hence, if the condition is false at the first iteration, the statement sequence is never executed. The while statement executes its statement (or block) repeatedly, testing the control condition before each iteration. As long as the condition returns true, execution of the statement (or block) continues.

Examples:

while Data[I] <> X do I := I + 1;

while I > 0 do

begin

 if Odd(I) then Z := Z * X;

 I := I div 2;

 X := Sqr(X);

end;

while not Eof(InputFile) do

begin

 Readln(InputFile, Line);

 Process(Line);

end;

repeat Statements

A repeat statement is used to repeat a statement or a block, until a control condition is evaluated as true.

The repeat statement executes its sequence of constituent statements continually, testing a control condition after each iteration. When the condition returns true, the repeat statement terminates. The sequence is always executed at least once because the condition is not evaluated until after the first iteration.

Examples:

repeat

 K := I mod J;

 I := J;

 J := K;

until J = 0;

repeat

 Write('Enter a value (0..9): ');

 Readln(I);

until (I >= 0) and (I <= 9);

for Statements

The Scripting Module supports for statements with the following syntax:

for counter := initialValue to finalValue do statement

The for statement sets counter to initialValue, repeats execution of its statement (or block) and increments the value of counter until counter reaches finalValue.

Examples:

// SCRIPT 1:

for c := 1 to 10 do

 a := a + c;

// SCRIPT 2:

for i := a to b do

begin

 j := i ^2;

 sum := sum + j;

end;

case Statements

The Scripting Module supports case statements with the following syntax:

case selectorExpression of

caseexpr1: statement1;

...

caseexprn: statementn;

else

elsestatement;

end

If the selectorExpression matches the result of one of the caseexprn expressions, the respective statement (or block) will be executed. Otherwise, the elsestatement will be executed. The else part of the case statement is optional.

Example:

case uppercase(Fruit) of

 'lime': ShowMessage('green');

 'orange': ShowMessage('orange');

 'apple': ShowMessage('red');

 else

   ShowMessage('black');

end;

Function and Procedure Declarations

Declaration of functions and procedures are similar to Pascal, with the difference that you don't specify variable types. To return function values, use the implicitly declared result variable.

Examples:

procedure HelloWorld;

begin

 ShowMessage('Hello world!');

end;

procedure UpcaseMessage(Msg);

begin

 ShowMessage(Uppercase(Msg));

end;

function TodayAsString;

begin

 result := DateToStr(Date);

end;

function Max(A,B);

begin

 if A > B then

   result := A

 else

   result := B;

end;

procedure SwapValues(var A, B);

var Temp;

begin

 Temp := A;

 A := B;

 B := Temp;

end;

Exception Handling

Exceptions provide a way to trap runtime errors without halting the script and without awkward conditional statements.

Exception handling is appropriate for errors whose chances of occurring are low or difficult to assess, but whose consequences are likely to be catastrophic (such as crashing the script); and for error conditions that are complicated or difficult to test for in if...then statements.

It is possible to protect any block of code by wrapping it in a try...finally or try...except statement. try..finally is used when you want a block of code to be executed in the finally section, no matter what error has occurred in the main block. try…except is used when you want to take a specific course of action if and only if an error occurs.

Examples:

// try...finally

var

 myFile;

begin

 // Try to open the Test.txt file for writing to

 AssignFile(myFile, 'c:\Test.txt');

 try

   ReWrite(myFile);

   // Write a couple of words to this file

   WriteLn(myFile, 'Hello');

   WriteLn(myFile, 'World');

 finally

   // No matter what happens, close the file.

   CloseFile(myFile);

 end;

end;

// try...except

NumberStr := '';

// Prompt the user to enter a number as a string.

if InputQuery('Input', 'Type a number from 1 to 5', NumberStr) then

begin

 try

   // Convert this number to a float variable

   Number := StrToFloat(NumberStr);

 except

   // If an error occurs then display a message.

   raise('Not a valid number.');

 end;

end;

DLL Functions

The Scripting Module allows the importing and calling of external DLL functions. For example, the following declaration:

function MyFunction(arg: integer): integer; external 'CustomLib.dll';

imports a function called MyFunction from CustomLib.dll. The Scripting Module also allows you to use a different name for the DLL function, like the following declaration:

function MessageBox(hwnd: pointer; text, caption: string;

msgtype: integer): integer; stdcall;

external 'User32.dll' name 'MessageBoxA';

which imports the 'MessageBoxA' function from User32.dll (a Windows API library), renamed as 'MessageBox' to be used in script.

Example:

// Declaration of external function

function MessageBox(hwnd: pointer; text, caption: string;

msgtype: integer): integer; stdcall;

external 'User32.dll' name 'MessageBoxA';

// Windows constants

const

 MB_ICONQUESTION = $20;

 MB_YESNO = $4;

 IDYES = 6;

begin

 if MessageBox(nil, 'Are you sure?', 'Confirmation',

                MB_ICONQUESTION + MB_YESNO) = IDYES then

   ShowMessage('User answered YES')

 else

ShowMessage('User answered NO')

end;


Language Overview (Basic)

Navigation: Scripting >

Return to chapter overview

Language Overview (Basic) - Scripting

In addition to Pascal, the Scripting Module can also execute scripts written in the BASIC language. It currently supports the following BASIC syntax:

§sub .. end and function .. end declarations

§byref and dim directives

§if .. then .. else .. end constructor

§for .. to .. step .. next constructor

§do .. while .. loop and do .. loop .. while constructors

§do .. until .. loop and do .. loop .. until constructors

§^ , * , / , and , + , - , or , <> , >=, <= , = , > , < , div , mod , xor , shl , shr operators

§try .. except and try .. finally blocks

§try .. catch .. end try and try .. finally .. end try blocks

§select case .. end select constructor

§array constructors

§exit statement

§access to object properties and methods (ObjectName.SubObject.Property)

The following pages describe:

§Script Structure

§Identifiers

§Assign Statements

§Character Strings

§Comments

§Variables

§Indexes

§Arrays

§if Statements

§while Statements

§loop Statements

§for Statements

§select case Statements

§FUNCTION and SUB Declarations

§DLL Functions

Script Structure

Script structure is made of two major blocks: a) function and sub declarations and b) main block. Both are optional, but at least one should be present in script.

Examples:

' SCRIPT 1:

SUB DoSomething

 CallSomething

END SUB

' SCRIPT 2:

FUNCTION MyFunction

 MyFunction = "Ok!"

END FUNCTION

Like in normal BASIC, statements in a single line can be separated by ":" characters.

Identifiers

Identifier names in script (variable names, function and procedure names, etc.) follow the most

common rules in BASIC:

▪ They must begin with a character (a..z or A..Z), or the '_' symbol.

▪ They can be followed by alphanumeric characters or the '_' symbol.

▪ They cannot contain any other character or spaces.

Valid identifiers:

VarName

_Some

V1A2

_____Some____

Invalid identifiers:

2Var

My Name

Some-more

This,is,not,valid

Assign Statements

To assign a value or expression result to a variable or object property, use '='.

Examples:

MyVar = 2

Button.Caption = "This " + "is ok."

Character Strings

Strings (sequence of characters) are declared in BASIC by using the double quote (") character.

Examples:

A = "This is a text"

Str = "Text " + "concat"

Comments

Comments can be inserted inside scripts using the ' (single quote) character or REM.

Examples:

' This is a comment before ShowMessage

ShowMessage("Ok")

REM This is another comment

ShowMessage("More ok!")

' And this is a comment

' with  two lines

ShowMessage("End of okays")

Variables

You can declare variables using the DIM directive and its name. It is optional as to whether you include the variable's type in its declaration.

Examples:

' SCRIPT 1:

SUB Msg

 DIM S

 S = "Hello world!"

 ShowMessage(S)

END SUB

' SCRIPT 2:

DIM A

A = 0

A = A + 1

ShowMessage(A)

' SCRIPT 3:

DIM A AS Integer = 5

ShowMessage(A)

Note you do not need to actually use the DIM directive, as variables are implicitly declared. The directive is provided to allow clarity in the script.

Indexes

Strings, arrays, and array properties can be indexed using the "[" and "]" characters. For example, if Str is a string variable, the expression Str[3] returns the third character in the string, while Str[I + 1] returns the character immediately after the one indexed by I.

Examples:

MyChar = MyStr[2]

MyStr[1] = "A"

MyArray[1,2] = 1530

Lines.Strings[2] = "Some text"

Arrays

Scripting supports array constructors and variant arrays.

To construct an array, use the "[" and "]" characters. You can construct a multi-dimensional (multi-indexed) array nesting array constructors. You can then access arrays using indexes. If an array is multi-indexed, separate the indexes using ",".

If a variable is a variant array, the Scripting Module automatically supports indexing in that variable. A variable is a variant array if it was assigned using an array constructor or if it was created using the VarArrayCreate procedure.

Note: Arrays are zero-based, i.e., they are indexed from 0.

Examples:

NewArray = [2, 4, 6, 8]

Num = NewArray[1]  ' Num receives "4"

' Create a 2-dimensional array

MultiArray = [["green","red","blue"], ["apple","orange","lemon"]]

Str = MultiArray[0,2]  ' Str receives "blue"

Str = MultiArray[1,0]  ' Str receives "apple"

MultiArray[1,1] = "pineapple"  ' Replace "orange" with "pineapple"

if Statements

There are two forms of the if statement: IF...THEN…END IF and IF...THEN...ELSE...END IF. In the case that the IF expression is true, the statement (or block) after it is executed. If there is an ELSE part and the expression is false, the statement (or block) after the ELSE is executed. (Note, if the IF statement is in a single line, you don't need to finish it with END IF)

Examples:

IF J <> 0 THEN Result = I/J

IF J = 0 THEN Exit ELSE Result = I/J

IF J <> 0 THEN

 Result = I/J

 Count = Count + 1

ELSE

 Done = True

END IF

while Statements

A while statement is used to repeat a statement or a block, while a control condition is evaluated as true.

The control condition is evaluated before the statement. Hence, if the condition is false at the first iteration, the statement sequence is never executed. The while statement executes its statement (or block) repeatedly, testing the control condition before each iteration. As long as the condition returns true, execution of the statement (or block) continues.

Examples:

WHILE (Data[I] <> X) I = I + 1 END WHILE

WHILE (I > 0)

 IF Odd(I) THEN Z = Z * X END IF

 X = Sqr(X)

END WHILE

WHILE (not Eof(InputFile))

 Readln(InputFile, Line)

 Process(Line)

END WHILE

loop Statements

The Scripting Module supports several loop statements:

DO WHILE expr statements LOOP

DO UNTIL expr statements LOOP

DO statements LOOP WHILE expr

DO statement LOOP UNTIL expr

These statements will be executed WHILE expr is true, or UNTIL expr is true. If expr is before the statements, then the control condition will be tested before each iteration. Otherwise, the control condition will be tested after each iteration.

Examples:

DO

 K = I mod J

 I = J

 J = K

LOOP UNTIL J = 0

DO UNTIL I >= 0

 Write("Enter a value (0..9): ")

 Readln(I)

LOOP

DO

 K = I mod J

 I = J

 J = K

LOOP WHILE J <> 0

DO WHILE I < 0

 Write("Enter a value (0..9): ")

 Readln(I)

LOOP

for Statements

The Scripting Module supports FOR statements with the following syntax:

FOR counter = initialValue TO finalValue STEP stepValue statements NEXT

The FOR statement sets counter to initialValue, repeats execution of its statement(s) until NEXT and increments the value of counter by stepValue until counter reaches finalValue. (Note, the STEP part is optional, and if omitted stepValue is considered 1.)

Examples:

' SCRIPT 1:

FOR c = 1 TO 10 STEP 2

 a = a + c

NEXT

' SCRIPT 2:

FOR I = a TO b

 j = I ^ 2

 sum = sum + j

NEXT

select case Statements

The Scripting Module supports SELECT CASE statements with the following syntax:

SELECT CASE selectorExpression

CASE caseexpr1

statement1

...

CASE caseexprn

statementn

CASE ELSE

elsestatement

END SELECT

If the selectorExpression matches the result of one of the caseexprn expressions, the respective statement(s) will be executed. Otherwise, the elsestatement will be executed. The else part of the case statement is optional.

Example:

SELECT CASE uppercase(Fruit)

 CASE "lime"

   ShowMessage("green")

 CASE "orange"

   ShowMessage("orange")

 CASE "apple"

   ShowMessage("red")

 CASE ELSE

   ShowMessage("black")

END SELECT

FUNCTION and SUB Declarations

Declaration of functions and subs are similar to BASIC. In functions to return function values, use the implicitly declared variable which has the same name of the function, or use the Return statement. Parameters by reference can also be used, using BYREF directive.

Examples:

SUB HelloWord

 ShowMessage("Hello world!")

END SUB

SUB UpcaseMessage(Msg)

 ShowMessage(Uppercase(Msg))

END SUB

FUNCTION TodayAsString

 TodayAsString = DateToStr(Date)

END FUNCTION

FUNCTION TodayAsString2

 Return DateToStr(Date)

END FUNCTION

FUNCTION Max(A,B)

 IF A>B THEN

   MAX = A

 ELSE

   MAX = B

 END IF

END FUNCTION

SUB SwapValues(BYREF A, B)

 DIM TEMP

 TEMP = A

 A = B

 B = TEMP

END SUB

DLL Functions

The Scripting Module allows the importing and calling of external DLL functions, using the following syntax:

function lib 'libName.dll' [alias ExternalFunctionName] [callingConvention]

functionName(arguments) as resultType;

For example, the following declaration:

function lib "CustomLib.dll" MyFunction(arg as integer) as integer

imports a function called MyFunction from CustomLib.dll. The Scripting Module also allows you to use a different name for the DLL function, like the following declaration:

function MessageBox lib "User32.dll" alias "MessageBoxA" stdcall (hwnd as pointer, text as string, caption as string, msgtype as integer) as integer

which imports the 'MessageBox' function from User32.dll (a Windows API library), renaming it to 'MessageBoxA' to be used in script.

Example:

' Declaration of external function

function MessageBox lib "User32.dll" alias "MessageBoxA" stdcall (hwnd as pointer, text as string, caption as string, msgtype as integer) as integer

' Windows constants

CONST MB_ICONQUESTION = $20

CONST MB_YESNO = $4

CONST IDYES = 6

IF MessageBox(nil, "Are you sure? ", "Confirmation",

   MB_ICONQUESTION + MB_YESNO) = IDYES THEN

 ShowMessage("User answered YES")

ELSE

 ShowMessage("User answered NO")

END IF

(After Save To File)

Scripting | Menus | File | Save to Binary Library

Save the contents of the Scripting Code window to an external file.

(After View)

Scripting | Menus | Script | Pascal

Scripting | Menus | Script | Basic


Example Scripts

Navigation: Scripting >

Return to chapter overview

Example Scripts - Scripting

Example scripts can be found in the "[FluidFlow3 folder]\QA Scripting" folder.

A brief overview and explanation of some of the scripts is provided below:

How to make a plot of the Hydraulic Grade Line (HGL) that exists between any two nodes in a network

It is often useful to view the hydraulic or energy grade line between two points in a network. This can be easily achieved by using the following few lines of script, (To view the full script that is needed to effect this, open the example file "4 pumps in parallel 3 Operating HGL Plot").

uses

Graphics,

FFConstants;

The uses clause is needed in this example because we make reference to color constants (in Graphics) and to some plot constants defined in FFConstants.

The Results Object has a method called ChartFlowPath which will make the plot required. This method requires 4 parameters to be passed when a call is made.

Results.ChartFlowPath(DisplaySet, 1, 23, PSIUnitId);

// The first parameter DisplaySet tells the method what you wish to display

// Possible values for this parameter are

//   cfpHGL which will plot the Hydraulic Grade Line

//   cfpEGL which will plot the Energy Grade Line

//   cfpStagnationPressure which will plot the Stagnation Pressure through the flow path

//   cfpStaticPressure which will plot the Static Pressure through the flow path

// The second parameter represents the start node for the plot

// The third parameter represents the end node for the plot

// The fourth parameter represents the units of head or pressure you wish to show on the plot.

It is possible to make any combination of plots by combining the available plot types into a pascal set. For example

DisplaySet := SetOf([cfpHGL, cfpEGL]);

will make 2 plots - one HGL and one EGL.

The nodes represented by the next two parameters StartNode and EndNode must exist. In addition there MUST be a flowpath between the two nodes specified. FluidFlow automatically detects the route between the nodes. The route followed will be the shortest flow path, if more than one flow path exists.

The final parameter PSIUnitId is a constant that represents the unit psi. You can either look up the constant directly from the reference section of this manual or you can use the method GetUnitId from the Units object.

psiUnitId := Units.GetUnitId('psi');


References

Navigation: Scripting >

Return to chapter overview

References - Scripting

The following pages list the different objects, constants, and routines that can be used in the Scripting Module:

§ Objects

§ Data Records

§ Property Constants

§ Element Kind Constants

§ Unit Ids

§ Graphics Color Constants

§ Standard Routines


Objects

The following pages outline the available objects and their properties and routines.

§ Network Object

§ Element Object

§ Results Object

§ Output Object

§ Data Object

§ Script Object

§ Units Object

§ Settings Object

Note: The following is a list of the commonly used types in the Scripting Module:

Type | Description
Boolean | True or False
Float | Values from
Integer | Values from
IntegerArray | 0-based list of Integers
Number | Integer or Float
String | Represents a sequence of characters.
Variant | Values from any other type.


Network

The Network object is the main workhorse of the Scripting Module.

Function/Property

Description

AddGraphicObject(Kind: Integer; X1, Y1, X2, Y2: Integer): Integer

Adds graphic object (text, image, etc., depending on the Kind) to the network. Returns Id of new object; 0, if unsuccessful.

AddNode(Kind, X, Y: Integer): Integer

Add a node to the network. Returns Id of new Node; 0, if unsuccessful. See Element Kind Constants for possible Kind values.

NB: This routine was undocumented until 3.53; in previous versions of FluidFlow3, the parameter signature is: (X, Y, Kind: Integer)

AddPipe(Kind, StartNode, EndNode: Integer): Integer

Add a pipe to the network. Returns Id of new Pipe; 0, if unsuccessful. See Element Kind Constants for possible Kind values.

NB: This routine was undocumented until 3.53; in previous versions of FluidFlow3, the parameter signature is: (StartNode, EndNode, Kind: Integer).

Calculate: Integer

Solve the Network.

CalculationSettings[Name: String]: Variant

Get/Set any Calculation Option's value.

Clear

Clear the contents of the Network.

Count: Integer

Get the total number of Elements (Nodes and Pipes).

Filename: String

Get the Network's filename.

FlowsheetSettings[Name: String]: Variant

Get/Set any Flowsheet Option's value.

Get(ElementId: Integer; PropertyNameOrId: Variant; [FromUnitId: Integer; ToUnitId: Integer]): Variant

Get an Element's property value.

For result properties, you can optionally specify to convert the result value. If both the FromUnitId and ToUnitIds are specified the result will be converted between them. If only one is specified, this will be assumed to be the ToUnitId and the FromUnitId will be determined from how the result is stored internally.

GetAccumulatorConnectionData(ElementId: Integer; Data: TRecordList): Boolean

Given an ElementId, this will fill "Data" with information about the pipes connected to the accumulator. This function returns True if the specified ElementId is an Accumulator and has Connection Data specified. See Script | Accumulator Connection Data Record for more information about the record structure.

GetConnections(ElementId: Integer; Elements: IntegerArray): Integer

Given an ElementId, for a pipe this will fill Elements with the Ids of all connected nodes; for a node this will fill Elements with the Ids of all connected pipes. This function returns the number of Ids in Elements.

GetData(ElementId: Integer; Data: TRecord): Boolean

Given an ElementId, this will fill "Data" with the underlying equipment data for the node (if applicable).

GetElement(ElementId: Integer): Element

Get an Element object by Id. (See the Element Object.)

GetElementKindName(ElementId: Integer; [UseShortVersion: Boolean]): String

Given an Element Id return the name of the Kind associated with the Element, and any additional component-specific naming, if UseShortVersion is False.

GetElements(Elements: IntegerArray; FilterOrKind: Variant): Integer

Given a Filter (or Element Kind) this function will fill the Elements array with all the Element Ids that match, and return the total number of these as the result. Note: If neither a Filter or Kind is specified this will return all Nodes and Pipes in the Network.

GetFlowsheetExtents(var X1, Y1, X2, Y2: Integer)

Sets X1, Y1, X2, and Y2 to the values calculated as the (min/max) extents used in drawing the flowsheet on screen.

GetKindName(KindId: Integer): String

Given a KindId, returns the name associated with it.

GetNodes(Nodes: IntegerArray; FilterOrKind: Variant): Integer

Given a Filter (or Element Kind) this function will fill the Nodes array with all the Element Ids that match, and return the total number of these as the result. Note: If neither a Filter or Kind is specified this will return all the Nodes in the Network.

GetPipes(Pipes: IntegerArray; FilterOrKind: Variant): Integer

Given a Filter (or Element Kind) this will fill the Pipes array with all the Element Ids that match, and return the total number of these as the result. Note: If neither a Filter or Kind is specified this will return all the Pipes in the Network.

GetTexts(Texts: IntegerArray): Integer

Fills the Texts array with all the Ids of the "Text" strings in the Network, returning the total number of these as the result.

Load(Filename: String)

Load a Network from the file specified by Filename.

NodeCount: Integer

Get the number of nodes in the Network.

PipeCount: Integer

Get the number of pipes in the Network.

Refresh(Repaint: Boolean = False)

Refresh the user interface (i.e., the Data Report, Input Editor, etc.).

Use the Repaint parameter (which defaults to False) to repaint the flowsheet.

Save(Filename: String)

Save the Network to the file specified by Filename.

SaveFlowsheetToImageFile(Filename: String)

Save the flowsheet as a PNG format image file.

SaveFlowsheetToMetafile(Filename: String)

Save the flowsheet as a metafile image file.

Set(ElementId: Integer; PropertyNameOrId: Variant; Value: Variant)

Set an Element's property value, given a PropertyName or PropertyId to Value.

TextCount: Integer

Get the number of "Text" strings in the Network.

Getting and Setting Element Properties

The Network object provides two methods to get and set element properties:

§Get(ElementId: Integer; PropertyNameOrId: Variant): Variant

§Set(ElementId: Integer; PropertyNameOrId: Variant; Value: Variant)

Get will return the value of a property for a particular element. You specify the element's identifier in the first parameter, and the name (or identifier) of the property you wish to query in the second.

Example:

NodePressure := Network.Get(1, 66);

NodeFlow := Network.Get(1, 'Flow');

Set will update the value of a specified element's property. The first parameter is the element's id, the second is the property name or id, and the third is the value you wish to change the property to.

Example:

// If the flow is less than 100 then set the node's color to red.

if Network.Get(1, 46) < 100 then

 Network.Set(1, 'BackgroundColor', clRed);

Notes:

§To see the identifiers associated with each element select the "Show or Hide Node Numbers" and the "Show or Hide Pipe Numbers" buttons on the Flowsheet Toolbar. (Alternatively, check the "Show Node Numbers" and "Show Pipe Numbers" options in the "Components" page of the Flowsheet Options dialog.)

§See Property Constants for a full list of all available properties for each type of element.

Filtering Elements

On a subset of the network's elements, for example, you may wish to check how all the Flow Control Values in a network react as a Pump's speed is decreased.

Three functions have been provided to filter the elements of a network:

§GetElements(Elements: IntegerArray; FilterOrKind: Variant): Integer

§GetNodes(Nodes: IntegerArray; FilterOrKind: Variant): Integer

§GetPipes(Pipes: IntegerArray; FilterOrKind: Variant): Integer

All functions can take two parameters: – the IntegerArray of Element Ids to be filled, and a Filter (or Kind constant). A Filter is a logical condition that will return the Ids of elements that match the condition (i.e., evaluate to True). The Kind refers to the "group" or "subgroup" that an element belongs to, e.g., a Boundary or Steel Pipe or Duct. The Filter/Kind parameter is optional; if it is not included then the routines will fill the IntegerArray with the Ids of all Elements, Nodes, or Pipes in the Network. All functions return the number of items that match the Filter/Kind.

Note: GetElements is used when you do not want to distinguish between Node and Pipe Elements.

When specifying a Kind instead of a Filter, you can pass in an integer value (if you know it for the Kind), or use a constant value from the FFKindConstants library. If you use a constant, then you must include FFKindConstants in the script's uses clause.

uses

 FFKindConstants; // Required for Element Kind constants.

var

 NodeIds;

begin

 // Use the ekBoundaries constant to fill NodeIds with all the

 // Boundaries in the network.

 Count := Network.GetNodes(NodeIds, ekBoundaries);

 ShowMessage('No. Of Boundaries = ' + IntToStr(Count));

end;

Note: See Element Kind Constants for a full list. (These are also listed in the "[FluidFlow3 folder]\Default\Scripts\FFKindConstants.psc" file.)

When a Filter is specified only those Nodes/Pipes that meet the filter's conditions will be returned in the IntegerArray. The filter condition will normally make use of Property Names or Ids.

Note: Within the filter condition the Property Names/Ids must be prefixed with the : (colon) character.

const

 NodeFilter = '(:66 > 1)'; // Pressure greater than one

var

 PipeIds;

 NodeIds;

begin

 Count := Network.GetPipes(PipeIds);

 ShowMessage('Pipes in Network = ' + IntToStr(Count));

 Count := Network.GetNodes(NodeIds, NodeFilter);

 ShowMessage('Nodes with Pressure > 1 = ' + IntToStr(Count));

end;

By using combinations of comparison and logical operators, you can create fairly sophisticated filters. For example, the following statement checks that the Pressure is greater than 1 and the Flow is less than 100:

const

 NodeFilter = '(:BoundaryPressure > 1) AND (:Flow < 100)';

var

 NodeIds;

begin

 NodeCount := Network.GetNodes(NodeIds, NodeFilter);

 ShowMessage(NodeCount);

end;

Comparison and logical operators that can appear in a Filter

Operator | Meaning
< | Less than
> | Greater than
>= | Greater than or equal to
<= | Less than or equal to
= | Equal to
<> | Not equal to
AND | Tests two statements are both True
NOT | Tests that the following statement is not True
OR | Tests that at least one of two statements is True
+ | Adds numbers
- | Subtracts numbers
* | Multiplies two numbers
/ | Divides two numbers

Solving the Network

Use the Calculate function to solve the network. This function will return 0 if successful; it will return an error code if the calculation fails.

uses

 FFErrors; // Required For GetNetworkError function

begin

 // Solve the network.

 ErrorCode := Network.Calculate;

 // If an error occurred then display its associated message.

 if ErrorCode <> 0 Then

   ShowMessage(GetNetworkError(ErrorCode));

end;

Note: See the "[FluidFlow3 folder]\Default\Scripts\FFErrors.psc" file for a full list of the error messages.

Using Accumulator Connection Data

Example: Open the "[FluidFlow3 folder]\QA Incompressible Flow\Accumulator\Accumulator Outlet Pipe Connections.ff3" example and add the following script in the editor.

var

Data: TRecordList;

p: TRecord;

  sPipeNumber: string;

sBranchHeight: string;

begin

Network.GetAccumulatorConnectionData(1, Data);

  Output.Add('The full data returned for Node 1:');

  Output.Add(Data.AsText);

  p := Data[2];

  sPipeNumber := IntToStr(p['PipeNumber']);

  sBranchHeight := FloatToStr(p['BranchHeight']);

  ShowMessage('Branch Height for Pipe ' + sPipeNumber + ' is: ' + sBranchHeight);

end;

Network Object Examples

Example: This example will go through the network 5 times, increasing the value of the first node's pressure by 1.5 each iteration. It calls a procedure to check each node's Flow result value – if it is less than 100 it will change the background color of the node to RED.

uses

 Graphics; // Include this to get access to clRed.

procedure UpdateNodeBackgroundColors;

var

 NodeIds; // IntegerArray for holding the node ElementIds.

begin

 NodeCount := Network.GetNodes(NodeIds);

 if NodeCount > 0 then

 begin

   // NOTE: NodeIds is a 0-based array so all indexing starts at 0.

   for NodeIndex := 0 to NodeCount – 1 do

   begin

     // If the current element's flow is less than 100 then set

     // it's Background color to red.

     if Network.Get(NodeIds[NodeIndex], 46) < 100 then

       Network.Set(NodeIds[NodeIndex], 'BackgroundColor', clRed);

   end;

 end;

end;

begin

 for i := 1 to 5 do

 begin

   // Get the Pressure value of Node 1

   ePressure := Network.Get(1, 66);

   // Increase Pressure by 1.5

   Network.Set(1, 66, ePressure + 1.5);

   // Recalculate the network.

   Network.Calculate;

   // Call the UpdateNodeBackgroundColors procedure.

   UpdateNodeBackgroundColors;

   // Update the flowsheet's user interface to reflect the changes.

   Network.Refresh;

 end;

end;

Example: In this example we are using a filter to get all the Nodes that have a pressure value greater than 1.

uses

 Graphics; // Include this to get access to clRed.

const

 NodeFilter = '(:66 > 1)'; // Pressure greater than one

var

 NodeIds; // IntegerArray for holding the node ElementIds.

begin

 // Get all the NodeIds that match the Filter.

 NodeCount := Network.GetNodes(NodeIds, NodeFilter);

 if NodeCount > 0 then

 begin

   // Go through each matching Node.

   for NodeIndex := 0 to NodeCount - 1 do

   begin

     // Get the 'current' Node.

     e := Network.GetElement(NodeIds[NodeIndex]);

     // Change its background color to green.

     e.Property['BackgroundColor'] := clGreen;

   end;

 end;

 // Update the flowsheet's user interface to reflect the changes.

 Network.Refresh;

end;


Element

The Element object provides a short-hand method of accessing network elements (nodes and pipes) and their properties.

Note: You must use the Network.GetElement routine to get an Element object from the network.

Function/Property | Description
Get(PropertyNameOrId: Variant; [FromUnitId: Integer; ToUnitId: Integer]): Variant | Get the value of a property, given a PropertyName or PropertyId. For result properties, you can optionally specify to convert the result value. If both the FromUnitId and ToUnitIds are specified the result will be converted between them. If only one is specified, this will be assumed to be the ToUnitId and the FromUnitId will be determined from how the result is stored internally.
GetKindName([UseShortVersion: Boolean = False]): String | Returns the name of the Kind associated with this Element, and any additional component-specific naming, if UseShortVersion is False.
Id: Integer | Returns the Element's Id.
Property[PropertyNameOrId: Variant]: Variant | Gets/Sets the value of an element property given a PropertyName or PropertyId.
PropertyExists(Name: String): Boolean | Returns True if a property with the specified name exists in the Element; False, otherwise.
Set(PropertyNameOrId: Variant; Value: Variant) | Set the value of a property, given a PropertyName or PropertyId.
Status: Integer | Get/Set the Status property for this Element.

Example: This example will go through the network 5 times, increasing the value of the first node's pressure by 1.5 each iteration. It calls a procedure to check each node's Flow result value – if it is less than 100 it will change the background color of the node to RED.

uses

 Graphics;

procedure UpdateNodeBackgroundColors;

var

 NodeIds;

begin

 NodeCount := Network.GetNodes(NodeIds);

 if NodeCount > 0 then

 begin

   // NOTE: NodeIds is a 0-based array so all indexing starts at 0.

for NodeIndex := 0 to NodeCount – 1 do

begin

     e := Network.GetElement(NodeIds[NodeIndex]);

     // If the current element's flow is less than 100 then set

     // it's Background color to red.

     if e.Property[46] < 100 then

     begin

       e.Property['BackgroundColor'] := clRed;

       Output.Add('Changed Node: ' + IntToStr(e.Id));

     end;

end;

 end;

end;

begin

 Output.Clear;

 Node1 := Network.GetElement(1);

 for i := 1 to 5 do

 begin

   ePressure := Node1.Get(66); // Could use Node1.Property['BoundaryPressure'];

Node1.Set(66, ePressure + 1.5);

        Network.Calculate;

UpdateNodeBackgroundColors;

Network.Refresh;

 end;

end;

See Property Constants for a full list of all available properties for each type of element.


Results

The Results object provides access to the Results page in the Scripting window. This page is typically used to track the values of element properties, but can be extended to include user-defined fields as well.

The Results object is used to dynamically add new result fields, update the contents of existing fields (which have been defined by the Results | Configure… menu item), load and save results to a file, and chart flow paths through nodes in the network.

Function/Property | Description
Add(Name: String; ShowOnGraph: Boolean; Color: Integer; GraphTitle, XAxisLabel, YAxisLabel: String): Integer | Add a new Result field (column) to the Results table. This function returns the FieldNo of the newly added Result field, or -1 if the field already exists.
ChartFlowPath(PathTypes: Set; StartNode, EndNode, PressureHeadUnitId: Integer): Integer | Chart the "profile" of pressure along a particular flowpath (from StartNode to EndNode). The type of profile is determined by the value of PathTypes, and the resulting values will be displayed in PressureHeadUnitId. See Plotting Flow Paths.
Clear | Clear all Result data values.
DataCount: Integer | Get the number of Result data values (i.e, the number of rows in the Results table).
Delete(NameOrFieldNo: String): Boolean | Delete the Result field specified by NameOrFieldNo. This function will return True if the field was deleted; and False if the field does not exist.
DeleteFields | Delete all Result fields & data values – this will delete all columns and rows in the Results table.
FieldCount: Integer | Get the number of Result fields (i.e., Result table columns).
FieldName(FieldNo: Integer): String | Get a Result field's name. FieldNo refers to the Result table column number you wish to access.
Get(NameOrFieldNo: Variant; RowNo: Integer): Float | Get the value of a Result field (specified by NameOrFieldNo) for a given row number.
Load(Filename: String): Boolean | Load the Results from a file. Returns True if the file exists and could be loaded.
Refresh | Update the Results table and charts.
Save(Filename: String): Boolean | Save the Results to a file. Returns True if the file is created.
SaveToXLS(Filename: String): Boolean | Save the Results to an XLS file. Returns True if the file is created.
SaveToXML(Filename: String): Boolean | Save the Results to an XML file. Returns True if the file is created.
Set(NameOrFieldNo: Variant; RowNo: Integer; Value: Float) | Set the value of a Result field (specified by NameOrFieldNo) for a given row number.
Update(NewRowId: Integer): Integer | Add a new Result data row, setting the values of all fields to the element property values they are associated with in the Network.

Updating Result Values

The Update function is used to add a new data row to the Results table, setting the values of all fields to the element property values they are associated with in the Network. The function returns the index of the newly added row.

§Update(NewRowId: Integer=0): Integer

You can use the optional NewRowId parameter to specify the identifier of the row. This value will be displayed in the '#' column of the Results table, and will be the x-axis value for all Results fields that are displayed in charts. If you do not include a value for NewRowId, the current number of rows + 1 is used.

Example:

begin

 // Clear all existing results field data.

 Results.Clear;

 // Assuming that you've used the Results | Configures Results... menu item to track Temperature

 for i := 1 to 5 do

 begin

   Pressure := Network.Get(1, 'BoundaryPressure');

   Network.Set(1, 'BoundaryPressure', Pressure + 1.5);

Network.Calculate;

   Results.Update(i);

 end;

end;

Note: Update will not update any user-defined Result fields. You must use the Set routine to do this.

Getting and Setting Result Field Values

The Results object provides two methods to get and set Result field values:

§Get(NameOrFieldNo: Variant; RowNo: Integer): Float

§Set(NameOrFieldNo: Variant; RowNo: Integer; Value: Float)

Example: Add a new result field – 'TestField' – and update it on each iteration of the loop.

uses

 Graphics; // Include this to get access to clGreen

begin

 // Clear all existing results field data.

 Results.Clear;

 // Add a new field – Q – to be shown on the graph in green.

 // Note: Q is not tied to any particular element in the network.

 TestColumnId := Results.Add('Test', True, clGreen, 'for loop', '', 'i value');

 for i := 0 to 4 do

       Results.Set(TestColumnId, i, i * 5);

 Output.Clear;

 for i := 0 to 4 do

       Output.Add(Results.Get(TestColumnId, i));

end;

Note: FieldNo and RowNo are 0-based, i.e., the first field number in the Results is 0, and the first RowNo in the Results is 0.

Adding New Result Fields

The Add function is available to allow the creation of user-defined Result fields at 'run-time'. At design-time use the Results | Configure… menu item to add the properties of nodes and pipes that you want to store results for.

§Add(Name: String; ShowOnGraph: Boolean; Color: Integer; GraphTitle, XAxisLabel, YAxisLabel: String): Integer

The new Result field's properties are specified by Add's parameters:

§Name – The name of the new Result field. This will be displayed in the Results table column header. The Name should be unique, otherwise, a new Result field will not be created.

§ShowOnGraph – Set to True if you want the Result field to be displayed in a graph on the Results page.

§Color – Use the constant values from the Graphics library to specify the color you want the graph to be drawn in. See Graphics Color Constants for a full list.

§GraphTitle – This is an optional parameter you can use to specify a title that will appear at the top of the graph.

§XAxisLabel – This is an optional parameter you can use to specify the X-axis label.

§YAxisLabel – This is an optional parameter you can use to specify the Y-axis label.

This function returns the FieldNo of the newly added Result field, or -1 if the field already exists. Note that FieldNo will be 0-based, i.e., the first field number will be 0.

Example: Add a new result field – 'Q' – and update it on each iteration of the loop.

uses

 Graphics; // Include this to get access to clGreen

begin

 // Clear all existing results field data.

 Results.Clear;

 // Add a new field – Q – to be shown on the graph in green.

 // Note: Q is not tied to any particular element in the network.

 FlowColumnId := Results.Add('Q', True, clGreen, 'Q Test', '', 'Q');

 Node1 := Network.GetElement(1);

 for i := 1 to 5 do

 begin

   ePressure := Node1.Property['BoundaryPressure']; // Could use Node1.Get(66);

   Node1.Property['BoundaryPressure'] := ePressure + 1.5;

   Network.Calculate;

   // Update all the fields in the Results with their current

   // network element values. Update will return the index of the

   // row updated.

   NextRowIndex := Results.Update;

   // Set the value of Q to Node1's Flow value.

   Results.Set(FlowColumnId, NextRowIndex, Node1.Property['InternalFlow']); // Internal Flow = Property Id 46

 end;

 Network.Refresh;

 // Update the Results Table and Charts.

 Results.Refresh;

end;

Plotting Flow Paths

The ChartFlowPath function is used to chart the "profile" of pressure along specified flow paths (from StartNode to EndNode). The type of profile is determined by the value of PathTypes, and the resulting values will be displayed in PressureHeadUnitId.

§ChartFlowPath(PathTypes: Set; StartNode, EndNode, PressureHeadUnitId: Integer): Integer

The values for the PathTypes set are:

Path Type | Id | Constant
Hydraulic Grade Line | 0 | cfpHGL
Energy Grade Line | 1 | cfpEGL
Stagnation Pressure | 2 | cfpStagnationPressure
Static Pressure | 3 | cfpStaticPressure

You must use the SetOf() routine to specify what you want to chart. If you want to use the cfp constants you must include FFConstants in the uses clause.

Example: This script will Plot the Hydraulic Grade Line (HGL) and Energy Grade Line (EGL) from Nodes 1 to 23. It will automatically add two Result Fields - HGL_1 and EGL_1 - and populate them with the values from Nodes 1 to 23 (including the Pipes in-between).

uses

 FFConstants; // Include to get access to ChartFlowPath constants.

begin

 // Clear the existing result values.

 Results.Clear;

 Network.Calculate;

 // Chart the HGL and EGL paths from nodes 1 to 23

 Results.ChartFlowPath(SetOf([cfpHGL, cfpEGL]), 1, 23, 1208); // 1208 = psi g

 // The above could be written as: Results.ChartFlowPath(SetOf([0, 1]), 1, 23, 1208);

end;


Output

The Output object refers to the Output text window located at the bottom of the Scripting form. Use the Output object to clear the contents of this window, add strings to it, save the contents to a file, and load from a file.

Function/Property | Description
Add(Value: String) | Add a new line to the Output window.
Clear | Clear the Output window.
Count: Integer | Get the number of lines in the Output window.
Load(Filename: String) | Replace the contents of the Output window from a text file.
Save(Filename:String) | Save the contents of the Output window to a text file.
Text: String | Returns the contents of the Output window as a text string.

Example: This is just a simple example to add the numbers 1 to 5 in the Output window, save the contents of this window to disk, and reload it.

begin

 Output.Clear;

 for i := 1 to 5 do

 begin

   Output.Add(i);

 end;

 Output.Save('C:\TEST1.TXT');

 Output.Clear;

 Output.Load('C:\TEST1.TXT');

end;


Data

Provides (read) access to the FluidFlow databases for Pipes, Boundaries, Boosters, etc.

Function/Property | Description
GetPipes(Pipes: TRecordList; [Filter: string]): Integer | Fills Pipes with all the records from the Pipes database, and returns the number of records. See Script References | Pipe Data Record for more information about the record structure.
GetBoundaries(Boundaries: TRecordList; [Filter: string]): Integer | Fills Boundaries with all the records from the Boundaries database, and returns the number of records. See Script References | Boundary Data Record for more information about the record structure.
GetBoosters(Boosters: TRecordList; [Filter: string]): Integer | Fills Boosters with all the records from the Boosters database, and returns the number of records. See Script References | Booster Data Record for more information about the record structure.
GetValves(Valves: TRecordList; [Filter: string]): Integer | Fills Valves with all the records from the Valves database, and returns the number of records. See Script References | Valve Data Record for more information about the record structure.
GetControllers(Controllers: TRecordList; [Filter: string]): Integer | Fills Controllers with all the records from the Controllers database, and returns the number of records. See Script References | Controller Data Record for more information about the record structure.
GetCheckValves(CheckValves: TRecordList; [Filter: string]): Integer | Fills CheckValves with all the records from the CheckValves database, and returns the number of records. See Script References | Check Valve Data Record for more information about the record structure.
GetResistances(Resistances: TRecordList; [Filter: string]): Integer | Fills Resistances with all the records from the Resistances database, and returns the number of records. See Script References | Resistance Data Record for more information about the record structure.
GetReliefValves(ReliefValves: TRecordList; [Filter: string]): Integer | Fills ReliefValves with all the records from the ReliefValves database, and returns the number of records. See Script References | Relief Valve Data Record for more information about the record structure.
GetFluids(Fluids: TRecordList; [Filter: string]): Integer | Fills Fluids with all the records from the Fluids database, and returns the number of records. See Script References | Fluid Data Record for more information about the record structure.
GetSolids(Solids: TRecordList; [Filter: string]): Integer | Fills Solids with all the records from the Solids database, and returns the number of records. See Script References | Solid Data Record for more information about the record structure.
GetPulpPapers(PulpPapers: TRecordList; [Filter: string]): Integer | Fills PulpPapers with all the records from the PulpPapers database, and returns the number of records. See Script References | Pulp Paper Data Record for more information about the record structure.
GetManufacturers(Manufacturers: TRecordList; [Filter: string]): Integer | Fills Manufacturers with all the records from the Manufacturers database, and returns the number of records. See Script References | Manufacturer Data Record for more information about the record structure.
GetMaterials(Materials: TRecordList; [Filter: string]): Integer | Fills Materials with all the records from the Materials database, and returns the number of records. See Script References | Material Data Record for more information about the record structure.
GetApplications(Applications: TRecordList; [Filter: string]): Integer | Fills Applications with all the records from the Applications database, and returns the number of records. See Script References | Application Data Record for more information about the record structure.
GetMaterialInsulations(MaterialInsulations: TRecordList; [Filter: string]): Integer | Fills MaterialInsulations with all the records from the MaterialInsulations database, and returns the number of records. See Script References | Material Insulation Data Record for more information about the record structure.
GetPipeInsulations(PipeInsulations: TRecordList; [Filter: string]): Integer | Fills PipeInsulations with all the records from the PipeInsulations database, and returns the number of records. See Script References | Pipe Insulation Data Record for more information about the record structure.
GetRoughnesses(Roughnesses: TRecordList; [Filter: string]): Integer | Fills Roughnesses with all the records from the Roughnesses database, and returns the number of records. See Script References | Roughness Data Record for more information about the record structure.
GetPipeSizingData(PipeSizingData: TRecordList; [Filter: string]): Integer | Fills PipeSizingData with all the records from the PipeSizingData database, and returns the number of records. See Script References | Pipe Sizing Data Record for more information about the record structure.
GetPipeScalings(PipeScalings: TRecordList; [Filter: string]): Integer | Fills PipeScalings with all the records from the PipeScalings database, and returns the number of records. See Script References | Pipe Scaling Data Record for more information about the record structure.
AddFluid(Filename: string; AddAsDuplicateIfExists: Boolean): string | Adds a .fluid file to your Fluids database, returning the name of the fluid if it was successfully added; blank, otherwise.
SaveFluid(FluidId: Integer; Filename: string): Boolean | Saves a record with the specified FluidId from the Fluids database to a .fluid file, returning True if successful; False, otherwise.
AddComp(GroupId: Integer; Filename: string; AddAsDuplicateIfExists: Boolean): string | Adds a .comp file to your equipment items DATA, returning the name of the component if it was successfully added; blank, otherwise.
SaveComp(GroupId, KindId, ComponentId: Integer; Filename: string) : Boolean | Saves a record from your equipment items DATA to a .comp file, returning True if successful; False, otherwise.
IsReadOnly: Boolean | Returns True if your DATA folder is opened as Read-Only; False, otherwise.

Note: The optional Filter parameter for each of the functions applies only to the top-level fields of the applicable data record structure. Each data structure for the functions can contain sub-records with fields within them. For example, Pipe contains a 'BlobData' sub-record with an 'InsideDiameter' field; however, the Filter can only be applied to a top-level field such as 'Manufacturer'.

Example: This example will get all the Pipes from the FluidFlow database, display the data for the first pipe, and access the InsideDiameter field of the first BlobData sub-record.

var

Pipes: TRecordList;

Pipe: TRecord;

BlobDataList: TRecordList;

BlobData: TRecord;

begin

Data.GetPipes(Pipes);

// Point to the first pipe and display its fields in the Output window.

Pipe := Pipes[0];

Output.Add(Pipe.AsText);

// Get all the blob data for the pipe and display the InsideDiameter for the first entry.

BlobDataList := Pipe['BlobData'];

if (BlobDataList.Count > 0) then

begin

BlobData := BlobDataList[0];

ShowMessage(BlobData['InsideDiameter']);

end;

end;

Example: This example filters the Roughness database for AbsoluteRoughness greater than one, and displays the data for the first record in the Output window.

var

  RoughnessList: TRecordList;

  RoughnessData: TRecord;

begin

  if (Data.GetRoughnesses(RoughnessList, '(AbsoluteRoughness > 1)') > 0) then

  begin

    RoughnessData := RoughnessList[0];

    Output.Add(RoughnessData.AsText);

  end;

end;


Script

This provides access to the underlying Script Engine.

Function/Property | Description
ExecuteProc(ProcName: string; [Params: array of Variant]) | Calls the specified procedure, passing the (optional) parameters to it.
ExecuteFunc(FuncName: string; [Params: array of Variant]): Variant | Calls the specified function, passing the (optional) parameters to it, and returning the result.
Pause | Pauses the execution of the current script. To resume click the 'Run' button or select the 'Script | Run' menu item.

Example:

procedure TestProc(s: string);

begin

 ShowMessage(s);

end;

function TestFunc(arg1, arg2: Integer): Integer;

begin

 Result := arg1 * arg2;

end;

begin

// Execute TestProc, passing 'This is a test' as a parameter.

Script.ExecuteProc('TestProc', ['This is a test']);

// This will pause script execution until you click the > run button (or select 'Script | Run')

 Script.Pause;

 // Call TestFunc, passing parameters 5,4 and show the result.

 ShowMessage(Script.ExecuteFunc('TestFunc', [5, 4]));

end;


Units

The Units object is used to convert values from one unit to another. See the Unit Constants Reference for a full list of the Unit Groups and Unit Ids.

Note: All Network Result property values are stored in SI units.

Function/Property | Description
Convert(FromUnitNameOrId, ToUnitNameOrId: Variant; Value: Float): Float | Convert Value from FromUnitNameOrId to ToUnitNameOrId. This routine assumes that the Units belong to the same Unit Group.
CrossConvert(UnitGroupNameOrId, FromUnitNameOrId, ToUnitNameOrId: Variant; Value, Rho: Float): Float | Convert Value from FromUnitNameOrId to ToUnitNameOrId using Rho.
GetUnitGroupId(UnitId: Integer): Integer | Returns the Unit Group Id that UnitId belongs to.
GetUnitId(Name: String): Integer | Returns the Unit Id associated with Name.
GetUnitIds(GroupId: Integer; UnitIds: IntegerArray): Integer |
GetUnitName(UnitId: Integer): String | Returns the Name associated with UnitId.
GetUnits(GroupId: Integer; Units: TRecordList): Integer | Fills Units with all the unit records (including Id, Name, and ConversionFactor) for the specified GroupId. Returns the count.
GetGroupId(Name: string): Integer | Returns the Group Id associated with Name.
GetGroupIds(GroupIds: IntegerArray): Integer | Fills GroupIds with the Ids of all available unit groups.
GetGroupName(GroupId: Integer): string | Returns the Name associated with GroupId.
GetGroups(Groups: TRecordList): Integer | Fills Groups with the records (Id, Name, UnitCount) of all available unit groups.

Example: Display the names of all the units for unit group 20 (Density).

var

 uList: TRecordList;

 u: TRecord;

begin

 Units.GetUnits(20, uList);

 for i := 0 to uList.Count - 1 do

 begin

   u := uList[i];

   Output.Add(u['Name']);

 end;

end;

Example: This example gets the Boundary Pressure value of the Node with Id 1, and converts it from the entered Pressure Unit to bar g.

Output.Clear;

Node1 := Network.GetElement(1);

Pressure := Node1.Get('BoundaryPressure');

PressureUnitId := Node1.Get('BoundaryPressureUnit');

PressureBarG := Units.Convert(PressureUnitId, 'bar g', Pressure);

Output.Add(PressureBarG);


Settings

Function/Property | Description
AtmosphericPressure: Float | Get/set the Calculation Option's Atmospheric Pressure value.
Calculation[Name: String]: Variant | Get/set any Calculation Option's value.
DecimalSeparator: Char | Get/set the character used as the decimal separator in floating point values, when represented as strings. This defaults to the Windows Regional Setting.
Environment[Name: String]: Variant | Get/set any Environment Option's value.
Flowsheet[Name: String]: Variant | Get/set any Flowsheet Option's value.
GetApplicationFolder: String | Returns the location of where PSFF.EXE is running from.
GetDataFolder: String | Returns the location of the user's current "DATA" folder (as per the 'Database | Connections...' menu item), where the equipment data, fluids, etc., are stored.
GetIniFilename: String | Returns the filename of the current "PSFF" INI file in use. As of v3.45, FluidFlow can be started with different PSFF.INIs.
GetInputProperties(ElementKind: Integer; PropsList: TRecordList; [Filter: String]): Integer | Fills PropsList with the InputProperty records for the specified ElementKind, optionally filtered. Returns the number of items in PropsList.
GetLicenseFolder: String | As per GetNetworkAccessFolder.
GetNetworkAccessFolder: String | Returns the location of the NetworkAccessFolder (as per the PSFF.INI entry), where the license is stored.
GetPreferencesFolder: String | Returns the location of the current user's "Preferences" folder, where FluidFlow.INI, etc., are stored.
GetResultProperties(ElementKind: Integer; PropsList: TRecordList; [Filter: String]): Integer | Fills PropsList with the ResultProperty records for the specified ElementKind, optionally filtered. Returns the number of items in PropsList.
GetResultUnits(ResultUnits: TRecordList) | Fills ResultUnits with the ResultUnit records (as used in the Options | Environment | Result Units... menu item.) (A ResultUnit record is made up of Group, Name, Unit, Value, and DecimalPlaces fields.)
Gravity: Float | Get/set the Calculation Option's Gravity value.
ThousandSeparator: Char | Get/set the character used as the thousand separator in floating point values, when represented as strings. This defaults to the Windows Regional Setting.

Example:

begin

 ShowMessage(Settings.GetIniFilename);

end;


Data Records

· Accumulator Connection Record

· Pipe Data Record

· Boundary Data Record

· Booster Data Record

· Valve Data Record

· Controller Data Record

· Check Valve Data Record

· Resistance Data Record

· Size Change Data Record

· Relief Valve Data Record

· Fluid Data Record

· Solid Data Record

· Pulp Paper Data Record

· Manufacturer Data Record

· Material Data Record

· Application Data Record

· Pipe Insulation Data Record

· Pipe Roughness Data Record

· Pipe Sizing Data Record

· Pipe Scaling Data Record

· Tolerance Data Record


Accumulator Connection Data Record

Accumulator Connection Data Record

BranchHeight: Double;

BranchHeightUnit: Integer;

EntranceType: Integer;

PipeNumber: Integer;

RDRatio: Integer;

PipeColorRef: Integer;


Pipe Data Record

Pipe Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData: (Note, the data below can be repeated any number of times)

ClassName: string;

InsideDiameter: Double;

OutsideDiameter: Double;

MaxOpPressure: Double;

AddInfo:

DiameterUnit: Integer;

MaxOpPressureUnit: Integer;


Boundary Data Record

Boundary Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData:

Flow: Double;

PressureLoss: Double;

AddInfo:

NominalK: Double;

NominalSize: Double;

DefinedBy: Integer;

CurveFit:

EqnType: Integer;

PolyOrder: Integer;

XUnit: Integer;

YUnit: Integer;

XSiUnit: Integer;

YSiUnit: Integer;

CorrelationCoefficientOrYieldStress: Double;

XGroup: Integer;

YGroup: Integer;

DoFitAsSI: Boolean;

UseXCrossConvert: Boolean;

UseYCrossConvert: Boolean;

MinLimit: Double;

MaxLimit: Double;

MaxAllowablePolyOrder: Integer;

AllowNegativeX: Boolean;

SizeUnit: Integer;

OpPressureUnit: Integer;

FlowUnit: Integer;

PressureLossUnit: Integer;


Booster Data Record

Booster Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData:

AddInfo:

Impeller: Double;

MinImpeller: Double;

MaxImpeller: Double;

ImpellerUnit: Integer;

Speed: Double;

MinSpeed: Double;

MaxSpeed: Double;

InletSize: Double;

OutletSize: Double;

SizeUnit: Integer;

MaxCurveFlow: Double;

MaxCurveHead: Double;

MaxOpPressure: Double;

OpPressureUnit: Integer;

ReservedI1: Integer;

UseInternalEfficiencyCorrection: Integer;

GasConditionVolumeFlow: Integer;

Usages: Integer;

cCurveFit:

EqnType: Integer;

PolyOrder: Integer;

XUnit: Integer;

YUnit: Integer;

XSiUnit: Integer;

YSiUnit: Integer;

CorrelationCoefficientOrYieldStress: Double;

XGroup: Integer;

YGroup: Integer;

DoFitAsSI: Boolean;

UseXCrossConvert: Boolean;

UseYCrossConvert: Boolean;

MinLimit: Double;

MaxLimit: Double;

MaxAllowablePolyOrder: Integer;

AllowNegativeX: Boolean;

eCurveFit:

EqnType: Integer;

PolyOrder: Integer;

XUnit: Integer;

YUnit: Integer;

XSiUnit: Integer;

YSiUnit: Integer;

CorrelationCoefficientOrYieldStress: Double;

XGroup: Integer;

YGroup: Integer;

DoFitAsSI: Boolean;

UseXCrossConvert: Boolean;

UseYCrossConvert: Boolean;

MinLimit: Double;

MaxLimit: Double;

MaxAllowablePolyOrder: Integer;

AllowNegativeX: Boolean;

nCurveFit:

EqnType: Integer;

PolyOrder: Integer;

XUnit: Integer;

YUnit: Integer;

XSiUnit: Integer;

YSiUnit: Integer;

CorrelationCoefficientOrYieldStress: Double;

XGroup: Integer;

YGroup: Integer;

DoFitAsSI: Boolean;

UseXCrossConvert: Boolean;

UseYCrossConvert: Boolean;

MinLimit: Double;

MaxLimit: Double;

MaxAllowablePolyOrder: Integer;

AllowNegativeX: Boolean;


Valve Data Record

Valve Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData: (Note, the data below can be repeated any number of times)

%Open: Integer

Cv: Double

AddInfo:

DefinedBy: Integer;

Connections: Integer;

multiwayType: Integer;

FullyOpenKOrKfOrCv: Double;

DivertKOrKfOrCv: Double;

Size: Double;

SizeUnit: Integer;

CurveFit:

EqnType: Integer;

PolyOrder: Integer;

XUnit: Integer;

YUnit: Integer;

XSiUnit: Integer;

YSiUnit: Integer;

CorrelationCoefficientOrYieldStress: Double;

XGroup: Integer;

YGroup: Integer;

DoFitAsSI: Boolean;

UseXCrossConvert: Boolean;

UseYCrossConvert: Boolean;

MinLimit: Double;

MaxLimit: Double;

MaxAllowablePolyOrder: Integer;

AllowNegativeX: Boolean;

OpPressureUnit: Integer

ReservedI1: Integer;

MaxOpPressure: Double;

ReservedD1: Double;


Controller Data Record

Controller Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData:

AddInfo:

CvDefinition: Integer;

FullyOpenValue: Double;

Size: Double;

SizeUnit: Integer;

PressureLossRatioFactor: Double;

PressureRecoveryFactor: Double;

LaminarFlowFactor: Double;

ValveStyleModifier: Double;

UseForFlowControl: Boolean;

UseForPressureControl: Boolean;

UseForLevelControl: Boolean;

UseForTemperatureControl: Boolean;

UseForLiquids: Boolean;

UseForGases: Boolean;

UseForSteam: Boolean;

OpPressureUnit: Integer;

MaxOpPressure: Double;

CurveFit:

EqnType: Integer;

PolyOrder: Integer;

XUnit: Integer;

YUnit: Integer;

XSiUnit: Integer;

YSiUnit: Integer;

CorrelationCoefficientOrYieldStress: Double;

XGroup: Integer;

YGroup: Integer;

DoFitAsSI: Boolean;

UseXCrossConvert: Boolean;

UseYCrossConvert: Boolean;

MinLimit: Double;

MaxLimit: Double;

MaxAllowablePolyOrder: Integer;

AllowNegativeX: Boolean;

LiquidEqn: Integer;

GasEqn: Integer;

SteamEqn: Integer;

UseForReserved1: Boolean;

UseForReserved2: Boolean;

UseForReserved3: Boolean;

UseForReserved4: Boolean;

ReservedI1: Integer;

ReservedI2: Integer;

ReservedD1: Double;

ReservedD2: Double;


Check Valve Data Record

Check Valve Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData:

AddInfo:

DefinedBy: Integer;

KOrKfValue: Double;

MinPipeVelocity: Double;

VelocityUnit: Integer;

MaxOpPressure: Double;

OpPressureUnit: Integer;


Resistance Data Record

Resistance Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData:

AddInfo:

KorKfValue: Double;

Flow: Double;

PressureDrop: Double;

ReferenceDensity: Double;

Exponent: Double;

FlowUnit: Integer;

PressureDropUnit: Integer;

ReferenceDensityUnit: Integer;

MaxOpPressure: Double;

OpPressureUnit: Integer;


Size Change Data Record

Size Change Data Record

Name: String;

DimensionUnit: Integer;

ReducerLength: Double;

LargeDiameterMax: Double;

SiReducerLength: Double;

SiLargeDiameterMax: Double;

MaxOpPressure: Double;

OpPressureUnit: Integer;


Relief Valve Data Record

Relief Valve Data Record

Group: Integer;

Name: String;

Manufacturer: String;

Component: Integer;

Parent: Integer;

Materials: Integer;

Applications: Integer;

BlobData:

AddInfo:

DefinedBy: Integer;

ValveType: Integer;

UseForLiquids: Boolean;

UseForGases: Boolean;

UseForSteam: Boolean;

DesignCoefficientKd: Double;

MaxAllowableOverPressurePercent: Double;

InletSize: Double;

OutletSize: Double;

SizeUnit: Integer;

ReservedI1: Integer;

ReservedI2: Integer;

ReservedD1: Double;

ReservedD2: Double;


Fluid Data Record

Fluid Data Record

ID: Integer

NAME: String;

FORMULA: String;

ACENTRICFACTOR: Double;

CRITICALCOMPRESSIBILITY: Double;

CRITICALPRESSURE: Double;

CRITICALTEMPERATURE: Double;

CRITICALVOLUME: Double;

MELTINGPOINT: Double;

BOILINGPOINT: Double;

IGCP0: Double;

IGCP1: Double;

IGCP2: Double;

IGCP3: Double;

IGCP4: Double;

MOLECULARWEIGHT: Double;

VPEQUATION: Integer;

VPA: Double;

VPB: Double;

VPC: Double;

VPD: Double;

VPMINTEMPERATURE: Double;

VPMAXTEMPERATURE: Double;

LIQUIDDENSITYEQUATION: Integer;

LIQUIDDENSITYREFERENCE: Double;

LIQUIDDENSITYREFTEMP: Double;

LIQUIDDENSITYZRA: Double;

LIQUIDVISCOSITYEQUATION: Integer;

LIQUIDVISCOSITYAORREF: Double;

LIQUIDVISCOSITYBORREFTEMP: Double;

LIQUIDVISCOSITYC: Double;

LIQUIDVISCOSITYD: Double;

LMUMINTEMPERATURE: Double;

LMUMAXTEMPERATURE: Double;

LIQUIDCPEQUATION: Integer;

LIQUIDCP0: Double;

LIQUIDCP1: Double;

LIQUIDCP2: Double;

LIQUIDCP3: Double;

LCPMINTEMPERATURE: Double;

LCPMAXTEMPERATURE: Double;

LIQUIDTCEQUATION: Integer;

LIQUIDTCA: Double;

LIQUIDTCB: Double;

LIQUIDTCC: Double;

LIQUIDTCD: Double;

LIQUIDTCMINTEMPERATURE: Double;

LIQUIDTCMAXTEMPERATURE: Double;

GASVISCOSITYEQUATION: Integer;

GASVISCOSITYA: Double;

GASVISCOSITYB: Double;

GASVISCOSITYC: Double;

GASVISCOSITYD: Double;

GASMUMINTEMPERATURE: Double;

GASMUMAXTEMPERATURE: Double;

GASTKEQUATION: Integer;

GASTKA: Double;

GASTKB: Double;

GASTKC: Double;

GASTKD: Double;

GASTKMINTEMPERATURE: Double;

GASTKMAXTEMPERATURE: Double;

FLUIDTYPE: Integer;

HVAPEQN: Integer;

HVAP: Double;

HVAPT: Double;

IDEALGASCPEQN: Integer;

GASCPEQN: Integer;

GASDENSITYEQN: Integer;

MUGPADJUST: Integer;

TKGPADJUST: Integer;

LIQDENSITYD: Double;

DIPOLEMOMENT: Double;

CanDelete: Boolean

LIQUIDDENSITYMINT: Double;

LIQUIDDENSITYMAXT: Double;

GASDENSITYMINT: Double;

GASDENSITYMAXT: Double;

IGCPMINT: Double;

IGCPMAXT: Double;

STEQN: Integer;

STA: Double;

STB: Double;

STMINT: Double;

STMAXT: Double;

ALTERNATENAME: acetylene tetrachloride

STATUS: Integer;

MIXTURETYPE: Integer;

FORMULAID: Integer;

Flags1: Integer;

Flags2: Integer;

Flags3: Integer;

Flags4: Integer;


Solid Data Record

Solid Data Record

Id: Integer;

Name: String;

SolidDensity: Double;

BulkDensity: Double;

SpecificHeat: Double;

ThermalConductivity: Double;

ShapeFactor: Double;

SlidingCoefficient: Double;


Pulp Paper Data Record

Pulp Paper Data Record

Id: Integer;

Name: String;

KDash: Double;

Sigma: Double;

K: Double;

Alpha: Double;

Beta: Double;

Gamma: Double;


Navigation: Scripting > References > Data Records >

Return to chapter overview

Manufacturer Data Record

Manufacturer Data Record

Id: Integer;

Name: String;


Material Data Record

Material Data Record

Id: Integer;

Name: String;

IsPipeMaterial: Boolean


Navigation: Scripting > References > Data Records >

Return to chapter overview

Application Data Record

Application Data Record

Id: Integer;

Name: String;


Pipe Insulation Data Record

Pipe Insulation Data Record

Id: Integer;

Name: String;

InsulationType: Integer;

TKData:

FixedTKValue: Double;

FixedTKUnit: Integer;

Data:

EqnType: Integer;

PolyOrder: Integer;

XUnit: Integer;

YUnit: Integer;

XSiUnit: Integer;

YSiUnit: Integer;

CorrelationCoefficientOrYieldStress: Double;

XGroup: Integer;

YGroup: Integer;

DoFitAsSI: Boolean;

UseXCrossConvert: Boolean;

UseYCrossConvert: Boolean;

MinLimit: Double;

MaxLimit: Double;

MaxAllowablePolyOrder: Integer;

AllowNegativeX: Boolean;

TableData: (Note, the data below can be repeated any number of times)

X: Double;

Y: Double;


Pipe Roughness Data Record

Roughness Data Record

Name: String;

Material: Integer;

AbsoluteRoughness: Double;

AbsoluteRoughnessUnit: Integer;


Pipe Sizing Data Record

Pipe Sizing Data Record

Name: String;

Id: Integer;

X: Double;

N: Double;

P: Double;

K: Double;

E: Double;

Y: Double;

A: Double;

B: Double;

F: Double;

Le: Double;

Z: Double;

Phi: Double;


Pipe Scaling Data Record

Pipe Scaling Data Record

Name: String;

Material: Integer;

ScalingPercent: Integer;

ScaleType: Integer;


Tolerance Data Record

Tolerance Data Record

Id: Integer;

Name: String;

ComponentKind: Integer;


Property Constants

Navigation: Scripting > References >

Return to chapter overview

Property Constants (Scripting Module)

§ Internal

§ Pipes

§ Boundaries

§ Junctions

§ Boosters

§ Valves

§ Controllers

§ Check Valves

§ General Resistances

§ Size Change

§ Relief Devices

§ Heat Exchangers

§ Gas Regulators


In‌ternal

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Internal Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
ComponentNumber | 0 | -- ID -- | Internal/Result
ComponentKind | 1 |  | Internal
Status | 2 |  | Internal
X1 | 3 |  | Internal
Y1 | 4 |  | Internal
X2 | 5 |  | Internal
Y2 | 6 |  | Internal
Visibility | 7 |  | Internal
Selected | 8 |  | Internal
Printed | 9 |  | Internal
CanChange | 10 |  | Internal
Connections | 11 |  | Internal
RotationIndex | 12 |  | Internal
InternalStatus | 13 |  | Internal
PipeNode1 | 14 |  | Internal
PipeNode2 | 15 |  | Internal
PipeSlope | 16 |  | Internal


Pipes

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Pipes Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
AutoSize | 17 | Sizing Model | Input
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSize | 153 | Exact Economic Size | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
EconomicVelocity | 42 | Economic Velocity | Result
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
FinesVolumePercent | 449 | Fines, Xf | Result
FlowScaleFactorPercent | 335 | Scaling (0 to 50%) | Input
FluidShearRate | 406 | Fluid Shear Rate (in s-1) | Result
FrictionFactor | 60 | Friction Factor | Result
FullyStratifiedVolumePercent | 452 | Fully Stratified, Xs | Result
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
HeatTransferUSource | 430 | Heat Transfer Coeff (U Value) | Input
HeterogeneousVolumePercent | 451 | Heterogeneous, Xh | Result
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutsideWallTemperature | 414 | Outside Surface Temperature | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
OutVsg | 243 | Out Gas Superficial Velocity | Result
OutVsl | 240 | Out Liq Superficial Velocity | Result
OverallHeatTransferCoeff | 419 | Overall Ht Transfer Coeff | Input
OverallHeatTransferCoefficient | 413 | Overall Ht Transfer Coeff | Result
OverallHeatTransferCoeffUnit | 420 | Heat Transfer Coeff Unit | Input
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeAnnulusID | 99 | Annulus Inner Diameter | Input
PipeAnnulusOD | 100 | Annulus Outer Diameter | Input
PipeAnnulusUnit | 101 | Diameter Unit | Input
PipeBackfillThickness | 466 | Buried Backfill Thickness | Input
PipeBackfillType | 465 | Buried Backfill Type | Input
PipeBuriedDepth | 467 | Buried Depth to Pipe Center | Input
PipeClass | 95 | Classification | Input
PipeCoatingThickness | 460 | Pipe Coating Thickness | Input
PipeCoatingType | 459 | Pipe Coating Type | Input
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PipeDatabaseRoughnessName | 103 | Roughness Description | Input
PipeDatabaseScalingName | 336 | Scaling Description | Input
PipeDepositionVelocity | 439 | Cvd Deposition Velocity | Result
PipeDescription | 107 | Nominal Size | Input
PipeDesignPressureGradient | 426 | Design Pressure Gradient | Input
PipeDesignPressureGradientUnit | 39 | Pressure Gradient Unit | Input
PipeDesignVelocity | 425 | Design Velocity | Input
PipeDesignVelocityUnit | 417 | Velocity Unit | Input
PipeDiameter | 75 | Inside Diameter | Input
PipeDiameterUnit | 35 | Diameter Unit | Input
PipeExactPressureGradientSize | 446 | Exact Pressure Gradient Size | Result
PipeExactVelocitySize | 444 | Exact Velocity Size | Result
PipeFixedFrictionFactor | 116 | Fixed Friction Factor | Input
PipeFrictionModel | 104 | Friction Model | Input
PipeGeometry | 83 | Geometry | Input
PipeHazenWilliamsCoefficient | 81 | Hazen Williams Coeff | Input
PipeInsulation | 108 | Insulation Type | Input
PipeInsulationThickness | 110 | Insulation Thickness | Input
PipeInsulationThickness1 | 463 | Buried Insulation Thickness | Input
PipeInsulationThicknessUnit | 112 | Insulation Thickness Unit | Input
PipeInsulationType | 462 | Buried Insulation Type | Input
PipeLength | 79 | Length | Input
PipeLengthUnit | 37 | Length Unit | Input
PipeLocalAmbientTemperature | 113 | Local Outside Temperature | Input
PipeLocalAmbientTemperatureUnit | 115 | Ambient Temperature Unit | Input
PipeMaxDepositionVelocity | 71 | Deposition Velocity | Result
PipeMaxOpPressure | 306 | Max Op Pressure | Input
PipeMaxOpPressureUnit | 93 | Pressure Unit | Input
PipeOutsideDiameter | 194 | Outside Diameter | Input
PipeRectangularHeight | 97 | Rectangular Height | Input
PipeRectangularUnit | 98 | Width/Height Unit | Input
PipeRectangularWidth | 96 | Rectangular Width | Input
PipeRoughness | 77 | Roughness | Input
PipeRoughnessUnit | 36 | Roughness Unit | Input
PipeSiDiameter | 76 | Size | Result
PipeSizingPressureGradient | 445 | Sizing Pressure Gradient | Result
PipeSizingVelocity | 443 | Sizing Velocity | Result
PipeSoilTemperature | 470 | Average Soil Temperature | Input
PipeSoilTemperatureUnit | 471 | Temperature Unit | Input
PipeSoilType | 469 | Soil Type | Input
PipeSpecificEnergy | 80 | Specific Energy | Result
PipeSurfaceEmissivity | 184 | Surface Emissivity | Input
PipeThickness | 78 | Wall Thickness | Input
PipeThicknessUnit | 468 | Thickness/Depth Units | Input
PipeVisualColor | 24 | Draw Color | Input
PipeVisualThickness | 23 | Draw Thickness [1..5] | Input
PipeWallShearStress | 408 | Wall Shear Stress | Result
PipeWindSpeed | 185 | Local Wind Speed | Input
PipeWindSpeedUnit | 187 | Speed Unit | Input
PressureLoss | 58 | Friction Loss | Result
PressureLossCorrelationName | 340 | Loss Correlation | Result
PseudoHomogeneousVolumePercent | 450 | Pseudo-Homogeneous, Xp | Result
ResultAutoSize | 89 | Result Auto Size | Result
ResultFluid | 199 | Composition % | Result
ResultHeatModel | 415 | Calculated T Type | Result
ResultPressureGradient | 447 | Pressure Gradient | Result
ReynoldsNumber | 61 | Reynolds No | Result
Rinside | 409 | Inside Film Coefficient | Result
Rinsulation | 411 | Insulation Coefficient | Result
Routside | 412 | Outside Film Coefficient | Result
Rwall | 410 | Pipe Wall Coefficient | Result
ShowElementText | 302 | Properties on Flowsheet | Input
SlurryVelocityRatio | 498 | Slurry Velocity Ratio | Result
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UsePipeBackfill | 464 | Use Buried Backfill | Input
UsePipeCoating | 458 | Use Pipe Coating | Input
UsePipeDatabaseProperties | 82 | Use Database Size | Input
UsePipeDatabaseRoughness | 102 | Use Database Roughness | Input
UsePipeDatabaseScaling | 334 | Use Database Scaling | Input
UsePipeInsulation | 461 | Use Buried Insulation | Input
UsePipeInsulationDatabase | 109 | Use Insulation | Input
UserDefinedFields | 496 | User-Defined Fields | Input
VaporToLiquidMass | 475 | Mass of Vapor Condensed | Result
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result
Vsg | 237 | In Gas Superficial Velocity | Result
Vsl | 236 | In Liq Superficial Velocity | Result


Boundaries

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Boundaries Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
AccumulatorNetFlow | 394 | Net Flow | Result
BoundaryFlow | 68 | Flow | Input
BoundaryFlowDirection | 22 | Flow Direction | Input
BoundaryFlowUnit | 34 | Flow Unit | Input
BoundaryPressure | 66 | Pressure | Input
BoundaryPressure | 66 | Surface Pressure | Input
BoundaryPressureUnit | 30 | Pressure Unit | Input
BoundaryTemperature | 64 | Temperature | Input
BoundaryTemperatureUnit | 29 | Temperature Unit | Input
CalculatedDensity | 139 | Density | Result
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedQuality | 386 | Calculated Quality (0..1) | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedSpecificHeat | 49 | Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
CalculatedViscosity | 141 | Viscosity | Result
ComponentDBName | 106 | Sprinkler Name | Input
ComponentDesignPressure | 157 | Exit Pressure | Input
ComponentDesignPressureUnit | 159 | Pressure Unit | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation to Vessel Base | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
EnteredKorKfValue | 27 | K (Pressure Loss Coeff) | Input
EquivalentLength | 398 | Equivalent Length (Le/D) | Result
Fluid | 85 | Fluid | Input
FluidMixtureType | 322 | Mix Type | Input
FluidType | 355 | Fluid Type | Input
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
IsStaticPressure | 403 | Pressure Model | Input
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
LiquidLevel | 70 | Liquid Level above Base | Input
LiquidLevelUnit | 31 | Level Unit | Input
MachNumber | 134 | In Mach Number | Result
NNIncludeSizeDistribution | 368 | Use Size Distribution Data | Input
NNSizeD50 | 369 | d50 mean diameter | Input
NNSizeD85 | 380 | d85 (85% of mass finer) | Input
NNSizeM100 | 373 | %Retained 100Mesh (.149mm) | Input
NNSizeM20 | 370 | %Retained 20Mesh (.833mm) | Input
NNSizeM200 | 374 | %Retained 200Mesh (.074mm) | Input
NNSizeM325 | 375 | %Retained 325Mesh (.043mm) | Input
NNSizeM35 | 371 | %Retained 35Mesh (.417mm) | Input
NNSizeM60 | 372 | %Retained 60Mesh (.25mm) | Input
NNSizeM625 | 376 | %Retained 625Mesh (.02mm) | Input
NNSizeUnit | 377 | d50/d85 Size Unit | Input
NNSolid | 357 | Solids | Input
NNSolidBy | 358 | Concentration defined by | Input
NNSolidPercent | 359 | Solids Concentration % | Input
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PiezometricPressure | 48 | Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PPSolidPercent | 407 | Wt% oven dry concentration | Input
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
ResultKValue | 421 | K Value | Result
ResultSolidsDelivered | 429 | Solids Delivered | Result
ShowElementText | 302 | Properties on Flowsheet | Input
SlurryFlowBasis | 321 | Flow Defined By | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressure | 44 | Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressure | 50 | Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
Temperature | 51 | Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseFlowInputQuality | 69 | Quality (0..1) | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result
VesselConnections | 92 | Connections | Input
VesselDiameter | 72 | Vessel Diameter | Input
VesselHeight | 74 | Vessel Full Height | Input
VesselHeightDiameterUnit | 33 | Vessel Dimension Unit | Input
VesselLength | 125 | Vessel Length | Input
VesselType | 91 | Vessel Type | Input
VesselWidth | 123 | Vessel Width | Input


Junctions

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Junctions Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
BranchJunctionK | 144 | Branch K (based on channel flow) | Result
CalculatedDensity | 139 | Density | Result
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedSpecificHeat | 49 | Specific Heat Capacity | Result
CalculatedTType | 308 | Calculated T Type | Result
CalculatedViscosity | 141 | In Viscosity | Result
CalculatedViscosity | 141 | Viscosity | Result
ComponentKindStr | 356 | Element Type | Result
ComponentNameIndex | 161 | Bend Defined By | Input
ComponentNameIndex | 161 | Cross Defined By | Input
ComponentNameIndex | 161 | Mitre Defined By | Input
ComponentNameIndex | 161 | Tee Defined By | Input
ComponentNameIndex | 161 | Wye Defined By | Input
ComponentNumber | 0 | -- ID -- | Result
ComponentQuantity | 119 | Quantity | Input
CrossNomenclature | 314 | Nomenclature | Input
CrossStraightPipeExitNumber | 315 | Straight Pipe (YELLOW) | Input
DirectionalExitPipeNumber | 19 | Branch Pipe (RED) | Input
DirectionalExitPipeNumber | 19 | Channel Pipe (RED) | Input
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
EquivalentLength | 398 | Equivalent Length (Le/D) | Result
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Channel Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
JunctionBranchAngle | 117 | Branch Angle | Input
JunctionBranchAngle | 117 | Branch/Branch Angle | Input
JunctionBranchAngle | 117 | Mitre Angle | Input
JunctionBranchAngle | 117 | Straight/Branch Angle | Input
JunctionBranchFlow | 317 | Branch Flow | Result
JunctionBranchLoss | 176 | Branch Loss | Result
JunctionBranchReference | 311 | Branch Reference | Result
JunctionConstruction | 122 | Construction | Input
JunctionNomenclature | 313 | Nomenclature | Input
JunctionRD | 118 | R/D Ratio | Input
JunctionSide1Flow | 273 | Side 1 Flow | Result
JunctionSide1Loss | 40 | Side 1 Loss | Result
JunctionSide1Reference | 310 | Side 1 Reference | Result
JunctionSide2Flow | 248 | Side 2 Flow | Result
JunctionSide2Loss | 20 | Side 2 Loss | Result
JunctionSide2Reference | 309 | Side 2 Reference | Result
JunctionStraightFlow | 318 | Straight Flow | Result
JunctionStraightLoss | 216 | Straight Loss | Result
JunctionStraightReference | 312 | Straight Reference | Result
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Channel Flow at NTP | Result
NTPGasFlow | 338 | Flow at NTP | Result
NTPJunctionBranchFlow | 361 | Branch Flow at NTP | Result
NTPJunctionSide1Flow | 365 | Side 1 Flow at NTP | Result
NTPJunctionSide2Flow | 367 | Side 2 Flow at NTP | Result
NTPJunctionStraightFlow | 363 | Straight Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
ResultKValue | 421 | K Value | Result
ShowElementText | 302 | Properties on Flowsheet | Input
Side1JunctionK | 124 | Side 1 K (based on channel flow) | Result
Side2JunctionK | 126 | Side 2 K (based on channel flow) | Result
StagnationPressure | 44 | Channel Stagnation Pressure | Result
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressure | 44 | Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Channel Flow at STP | Result
STPGasFlow | 339 | Flow at STP | Result
STPJunctionBranchFlow | 360 | Branch Flow at STP | Result
STPJunctionSide1Flow | 364 | Side 1 Flow at STP | Result
STPJunctionSide2Flow | 366 | Side 2 Flow at STP | Result
STPJunctionStraightFlow | 362 | Straight Flow at STP | Result
StraightJunctionK | 151 | Straight K (based on channel flow) | Result
Temperature | 51 | In Stag. Temperature | Result
Temperature | 51 | Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


Boosters

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Boosters Constants (Scripting Module)

Property Name | Property Id | Display Name | Property Kind
AutoSize | 17 | Automatically Size | Input
AutoSizeType | 111 | Sizing Model | Input
BoosterDutyEfficiency | 299 | Duty Efficiency (%) | Result
BoosterDutyEfficiency | 299 | Volumetric Efficiency (%) | Result
BoosterDutyNPSHR | 301 | Duty NPSH Required | Result
BoosterDutyPower | 300 | Duty Power | Result
BoosterImpellerDiameter | 168 | Impeller Diameter | Input
BoosterNPSHa | 177 | Duty NPSH Available | Result
BoosterOperatingSpeed | 173 | Operating Speed | Input
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
ComponentDBName | 106 | Booster Model | Input
ComponentDBName | 106 | Fan Model | Input
ComponentDBName | 106 | Pump Model | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
DirectionalExitPipeNumber | 19 | Discharge Pipe (RED) | Input
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Duty Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Duty Pressure Rise | Result
PumpSolidDerationBy | 227 | Solids Derating | Input
ResultAutoSize | 89 | Result Auto Size | Result
ResultFluid | 199 | Composition % | Result
SelectionDesignFlow | 147 | Design Flow | Input
SelectionDesignFlowUnit | 149 | Flow Unit | Input
SelectionDesignPressureLoss | 150 | Design Pressure Change | Input
SelectionDesignPressureLossUnit | 152 | Pressure Change Unit | Input
ShowElementText | 302 | Properties on Flowsheet | Input
SlurryPumpDerationFactor | 246 | Head Deration (1 to 0.5) | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StaticPressure | 50 | In Static Pressure | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


Valves

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Valves Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
3WayValveDuty | 307 | Valve Duty | Input
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
ComponentDBName | 106 | Valve Name | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
ComponentQuantity | 119 | Quantity | Input
DirectionalExitPipeNumber | 19 | Branch Pipe (RED) | Input
DirectionalExitPipeNumber | 19 | Closed Route (RED) | Input
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
EquivalentLength | 398 | Equivalent Length (Le/D) | Result
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
MachNumber | 134 | In Mach Number | Result
ManualValveOpening | 127 | % Open | Input
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
ResultKValue | 421 | K Value | Result
ShowElementText | 302 | Properties on Flowsheet | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


Controllers

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Controllers Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
AutoSize | 17 | Automatically Size | Input
AutoSizeValveType | 454 | Control Valve Type | Input
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSize | 153 | Calculated Cv | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedValveOpening | 167 | Valve Opening (%) | Result
CalculatedViscosity | 141 | In Viscosity | Result
ComponentDBName | 106 | Valve Model | Input
ComponentDesignPressure | 157 | Design Pressure | Input
ComponentDesignPressure | 157 | Differential Pressure | Input
ComponentDesignPressure | 157 | Entry Static Pressure | Input
ComponentDesignPressure | 157 | Exit Static Pressure | Input
ComponentDesignPressureUnit | 159 | Diff Pressure Unit | Input
ComponentDesignPressureUnit | 159 | Pressure Unit | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
CompressibilityFactorZ | 505 | Compressibility Factor, Z | Result
ControlMeasurementLocation | 200 | Measurment Location | Input
ControlMeasurementType | 278 | Measurment Type | Input
DirectionalExitPipeNumber | 19 | Discharge Pipe (RED) | Input
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
SelectionDesignFlow | 147 | Design Flow | Input
SelectionDesignFlowUnit | 149 | Flow Unit | Input
ShowElementText | 302 | Properties on Flowsheet | Input
SpecificHeatRatioCpCv | 504 | Specific Heat Ratio, Cp/Cv | Result
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


Check Valves

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Check Valves Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
ComponentDBName | 106 | NRV Name | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
DirectionalExitPipeNumber | 19 | Discharge Pipe (RED) | Input
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
EquivalentLength | 398 | Equivalent Length (Le/D) | Result
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
ResultKValue | 421 | K Value | Result
ShowElementText | 302 | Properties on Flowsheet | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


General Resistances

Navigation: Scripting > References > Property Constants >

Return to chapter overview

General Resistances Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
CentrifugeCoefficient | 348 | Centrifuge Coefficient | Input
CentrifugeRadiusE | 345 | External Radius | Input
CentrifugeRadiusI | 346 | Internal Radius | Input
CentrifugeRadiusUnit | 347 | Radius Unit | Input
CentrifugeSpeed | 344 | Operating Speed (RPM) | Input
CoilDiameter | 245 | Coil Diameter | Input
CoilLength | 247 | Coil Length | Input
CoilSizeUnit | 249 | Coil Size Unit | Input
ComponentDBName | 106 | Filter Name | Input
ComponentDBName | 106 | K Component Name | Input
ComponentDBName | 106 | Kf Component Name | Input
ComponentDBName | 106 | Kv Component Name | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
ComponentQuantity | 119 | Quantity | Input
ConstantHeadLoss | 154 | Pressure Loss (Constant) | Input
ConstantHeadLossUnit | 156 | Pressure Loss Unit | Input
CycloneCalculationDefinition | 230 | Cyclone Loss Correlation | Input
CycloneDiameter | 231 | Cyclone Diameter (Dc) | Input
CycloneInletDiameter | 242 | Inlet Dia (typically Dc/2) | Input
CycloneInletGeometry | 241 | Inlet Geometry | Input
CycloneInletWidth | 232 | Inlet W (typically Dc/4) | Input
CycloneK | 234 | Cyclone Miller K | Input
CycloneLappleK | 238 | Cyclone Shepherd K | Input
CycloneOutletDiameter | 239 | Outlet Dia (typically Dc/2) | Input
CycloneSizeUnit | 229 | Size Unit | Input
CyloneInletHeight | 233 | Inlet H (typically Dc/2) | Input
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
EnteredKorKfValue | 27 | K (Pressure Loss Coeff) | Input
EnteredKorKfValue | 27 | Kf (L/D) | Input
EquivalentLength | 398 | Equivalent Length (Le/D) | Result
ExchangerBaffleCount | 264 | Number of Baffles | Input
ExchangerBaffleDistance | 265 | Distance between Baffles | Input
ExchangerBaffleShellDistanceUnit | 269 | Distance/Diameter Unit | Input
ExchangerPassCount | 251 | Number of Tube Passes | Input
ExchangerPitchSize | 259 | Tube Pitch Distance | Input
ExchangerPitchTubeSizeUnit | 263 | Tube Size Unit | Input
ExchangerPitchType | 258 | Tube Pitch Type | Input
ExchangerShellID | 267 | Shell Inside Diameter | Input
ExchangerTubeCount | 250 | Number of Tubes | Input
ExchangerTubeDiameter | 252 | Tube Diameter | Input
ExchangerTubeDiameterUnit | 254 | Diameter Unit | Input
ExchangerTubeLength | 255 | Tube Length | Input
ExchangerTubeLengthUnit | 257 | Length Unit | Input
ExchangerTubeOD | 261 | Tube Outside Diameter | Input
ExpansionJointType | 244 | Expansion Type | Input
ExpansionLoopDimensionsUnit | 474 | Width/Height Units | Input
ExpansionLoopHeight | 473 | Expansion Loop Height | Input
ExpansionLoopWidth | 472 | Expansion Loop Width | Input
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InlineFilterHoleAreaRatio | 120 | Hole/Total Area Ratio | Input
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
KLossBasis | 114 | Loss Basis | Input
KvExponent | 193 | Exponent | Input
KvFlow | 183 | Flow | Input
KvFlowUnit | 188 | Flow Unit | Input
KvPressureLoss | 189 | Pressure Loss | Input
KvPressureLossUnit | 190 | Pressure Loss Unit | Input
KvRefDensity | 191 | Reference Density | Input
KvRefDensityUnit | 192 | Density Unit | Input
LabyrinthAreaUnit | 354 | Area Unit | Input
LabyrinthInOutCoefficient | 351 | In/Out Loss Coefficient | Input
LabyrinthLeakageArea | 352 | Leakage Area | Input
LabyrinthLengthUnit | 353 | Dimension Unit | Input
LabyrinthRadialClearance | 350 | Radial Clearance | Input
LabyrinthTotalLength | 349 | Length of Labyrinth | Input
MachNumber | 134 | In Mach Number | Result
MeanParticleDiameter | 220 | Mean Particle Diameter | Input
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PackedBedDiameter | 226 | Bed Diameter | Input
PackedBedDiameterUnit | 228 | Diameter Unit | Input
PackedBedHeight | 222 | Bed Height | Input
PackedBedHeightUnit | 223 | Height Unit | Input
ParticleDiameterUnit | 221 | Particle Diameter Unit | Input
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
ResultKValue | 421 | K Value | Result
ShowElementText | 302 | Properties on Flowsheet | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UseComponentDatabase | 138 | Use K from Database | Input
UseComponentDatabase | 138 | Use Kf from Database | Input
UseComponentDatabase | 138 | Use Kv from Database | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result
VoidFraction | 219 | Particle Void Fraction | Input


Size Change

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Size Change Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
AutoSize | 17 | Automatically Size | Input
AutoSizeType | 111 | Sizing Model | Input
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSize | 153 | Calculated Size | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
EquivalentLength | 398 | Equivalent Length (Le/D) | Result
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Flow at NTP | Result
OrificeCornerLoss | 341 | Corner Tap Loss | Result
OrificeD2Loss | 457 | D and D/2 Tap Loss | Result
OrificeEqn | 146 | Nozzle Equation | Input
OrificeEqn | 146 | Orifice Equation | Input
OrificeFlangeLoss | 456 | Flange Tap Loss | Result
OrificeSize | 143 | Orifice Size | Input
OrificeSize | 143 | Throat Diameter | Input
OrificeSizeUnit | 145 | Diameter Unit | Input
OrificeSizeUnit | 145 | Orifice Unit | Input
OrificeSizeUnit | 145 | Size Unit | Input
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ReducerLength | 137 | Reducer Length | Input
ReducerLengthUnit | 136 | Length Unit | Input
ReducerType | 201 | Reducer Type | Input
ResultFluid | 199 | Composition % | Result
ResultKValue | 421 | K Value | Result
SelectionDesignFlow | 147 | Design Flow | Input
SelectionDesignFlowUnit | 149 | Flow Unit | Input
SelectionDesignPressureLoss | 150 | Design Pressure Change | Input
SelectionDesignPressureLossUnit | 152 | Pressure Change Unit | Input
ShowElementText | 302 | Properties on Flowsheet | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
ThickOrificeLength | 283 | Plate Thickness | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UseComponentDatabase | 138 | Use Database Length | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result
VenturiInletAngle | 441 | Throat Inlet Angle | Input
VenturiOutletAngle | 442 | Throat Outlet Angle | Input
VenturiThroatLength | 440 | Throat Length | Input


Relief Devices

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Relief Devices Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
AutoSize | 17 | Automatically Size | Input
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
CertifiedResistanceCoefficientKr | 507 | Certified Resistance Coefficient (Kr) | Result
ComponentDBName | 106 | Relief Valve Name | Input
ComponentDesignPressure | 157 | Set Pressure | Input
ComponentDesignPressureUnit | 159 | Pressure Unit | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
ComponentQuantity | 119 | Quantity | Input
CompressibilityFactorZ | 505 | Compressibility Factor, Z | Result
DischargeCoefficientKd | 508 | Discharge Coefficient (Kd) | Result
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
EnteredKrValue | 502 | Certified Resistance Coefficient (Kr) | Input
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
KLossBasis | 114 | Loss Basis | Input
KrDatabaseName | 501 | Kr Component Name | Input
MachNumber | 134 | In Mach Number | Result
MolecularWeightMW | 506 | Molecular Weight, MW | Result
NTPGasFlow | 338 | Flow at NTP | Result
OrificeSize | 143 | Non Standard Size Area | Input
OrificeSizeUnit | 145 | Size Unit | Input
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ReliefDeviceCalculatedSize | 431 | Calculated Size | Result
ReliefDeviceKb | 437 | Back Pressure Factor (Kb) | Input
ReliefDeviceKb | 437 | Back Pressure Factor (Kb) | Result
ReliefDeviceKc | 499 | Combination Correction Factor (Kc) | Input
ReliefDeviceKc | 499 | Combination Correction Factor (Kc) | Result
ReliefDeviceMAWP | 432 | Overpressure | Input
ReliefDeviceOrificeLetter | 434 | Standard Orifice Size | Result
ReliefValveDiameter | 422 | Size | Result
ReliefValveEquation | 404 | Pressure Loss Model | Input
ReliefValveKd | 435 | Discharge Coefficient (Kd) | Input
ReliefValveOrificeLetter | 202 | Standard Orifice Size | Input
ReliefValveRole | 497 | Role | Input
ResultFluid | 199 | Composition % | Result
ResultKValue | 421 | K Value | Result
SelectionDesignFlow | 147 | Design Flow | Input
SelectionDesignFlowUnit | 149 | Flow Unit | Input
ShowElementText | 302 | Properties on Flowsheet | Input
SpecificHeatRatioCpCv | 504 | Specific Heat Ratio, Cp/Cv | Result
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UseComponentDatabase | 138 | Use Standard Size | Input
UseKrFromDatabase | 500 | Use Kr from Database | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


Heat Exchangers

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Heat Exchangers Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
BoundaryPressure | 66 | Operating Pressure | Input
BoundaryPressureUnit | 30 | Pressure Unit | Input
CalculatedDensity | 139 | Density | Result
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedQuality | 386 | Calculated Quality (0..1) | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedSpecificHeat | 49 | Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
CalculatedViscosity | 141 | Viscosity | Result
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
ConstantHeadLoss | 154 | Pressure Loss (Constant) | Input
ConstantHeadLossUnit | 156 | Pressure Loss Unit | Input
CrossStraightPipeExitNumber | 315 | Vapor Out (YELLOW) | Input
DirectionalExitPipeNumber | 19 | Liquid Out (RED) | Input
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
ExchangerBaffleCount | 264 | Number of Baffles | Input
ExchangerBaffleDistance | 265 | Distance between Baffles | Input
ExchangerBaffleShellDistanceUnit | 269 | Distance/Diameter Unit | Input
ExchangerFluidSide | 270 | Fluid Side | Input
ExchangerPassCount | 251 | Number of Tube Passes | Input
ExchangerPitchSize | 259 | Tube Pitch Distance | Input
ExchangerPitchTubeSizeUnit | 263 | Tube Size Unit | Input
ExchangerPitchType | 258 | Tube Pitch Type | Input
ExchangerShellID | 267 | Shell Inside Diameter | Input
ExchangerTubeCount | 250 | Number of Tubes | Input
ExchangerTubeDiameter | 252 | Tube Diameter | Input
ExchangerTubeDiameterUnit | 254 | Diameter Unit | Input
ExchangerTubeLength | 255 | Tube Length | Input
ExchangerTubeLengthUnit | 257 | Length Unit | Input
ExchangerTubeOD | 261 | Tube Outside Diameter | Input
HeatDirection | 178 | Heat Transfer Direction | Input
HeatExchangerPressureLossModel | 182 | Pressure Loss Model | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
KOPotFlashModel | 73 | Flash Calculation | Input
KOPotPressureModel | 393 | Pressure Model | Input
KvExponent | 193 | Exponent | Input
KvFlow | 183 | Flow | Input
KvFlowUnit | 188 | Flow Unit | Input
KvPressureLoss | 189 | Pressure Loss | Input
KvPressureLossUnit | 190 | Pressure Loss Unit | Input
KvRefDensity | 191 | Reference Density | Input
KvRefDensityUnit | 192 | Density Unit | Input
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PlateExchangerDimensionUnit | 276 | Width/Height Unit | Input
PlateExchangerHeight | 274 | Plate Height | Input
PlateExchangerNumberOfPlates | 280 | Number Of Plates | Input
PlateExchangerPlateGap | 277 | Distance between Plates | Input
PlateExchangerPlateGapUnit | 279 | Plate Distance Unit | Input
PlateExchangerWidth | 272 | Plate Width | Input
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
ResultSolidsDelivered | 429 | Solids Delivered | Result
ShowElementText | 302 | Properties on Flowsheet | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressure | 44 | Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressure | 50 | Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
Temperature | 51 | Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


Gas Regulators

Navigation: Scripting > References > Property Constants >

Return to chapter overview

Gas Regulators Constants (Scripting)

Property Name | Property Id | Display Name | Property Kind
AutoSizeValveType | 454 | Control Valve Type | Input
CalculatedDensity | 139 | In Density | Result
CalculatedHeatTransferred | 180 | Heat Transferred | Result
CalculatedOutDensity | 140 | Out Density | Result
CalculatedOutViscosity | 142 | Out Viscosity | Result
CalculatedSize | 153 | Calculated Cv | Result
CalculatedSpecificHeat | 49 | In Specific Heat Capacity | Result
CalculatedViscosity | 141 | In Viscosity | Result
ComponentDBName | 106 | Valve Model | Input
ComponentDesignPressure | 157 | Control Static Pressure | Input
ComponentDesignPressureUnit | 159 | Pressure Unit | Input
ComponentKindStr | 356 | Element Type | Result
ComponentNumber | 0 | -- ID -- | Result
ElementTextAlignment | 303 | Alignment | Input
ElementTextFont | 304 | Font | Input
ElementTextProperties | 305 | Properties | Input
Elevation | 62 | Elevation | Input
ElevationUnit | 28 | Elevation Unit | Input
HeatDirection | 178 | Heat Transfer Direction | Input
HeatLossModel | 105 | Heat Loss Model | Input
HeatTransferred | 179 | Heat Transferred | Input
HeatTransferredUnit | 181 | Heat Transfer Unit | Input
InFlow | 477 | In Flow | Result
InternalFlow | 46 | Flow | Result
InVaporPressure | 195 | In Vapor Pressure | Result
JTCoefficient | 453 | Joule-Thomson Coefficient | Result
MachNumber | 134 | In Mach Number | Result
NTPGasFlow | 338 | Flow at NTP | Result
OutCalculatedSpecificHeat | 54 | Out Specific Heat Capacity | Result
OutCrossSectionalArea | 438 | Out Cross Section Flow Area | Result
OutFlow | 478 | Out Flow | Result
OutMachNumber | 135 | Out Mach Number | Result
OutPhaseState | 169 | Out Fluid Phase | Result
OutPiezometricPressure | 53 | Out Piezometric Pressure | Result
OutStagnationPressure | 45 | Out Stagnation Pressure | Result
OutStaticPressure | 55 | Out Static Pressure | Result
OutStaticTemperature | 65 | Out Static Temperature | Result
OutTemperature | 56 | Out Stag. Temperature | Result
OutTwoPhaseQuality | 215 | Out Vapor Quality | Result
OutVaporPressure | 378 | Out Vapor Pressure | Result
OutVelocity | 59 | Out Velocity | Result
OutVelocityPressure | 57 | Out Velocity Pressure | Result
PhaseState | 21 | In Fluid Phase | Result
PiezometricPressure | 48 | In Piezometric Pressure | Result
PipeCrossSectionalArea | 381 | In Cross Section Flow Area | Result
PressureLoss | 58 | Friction Loss | Result
ResultFluid | 199 | Composition % | Result
ShowElementText | 302 | Properties on Flowsheet | Input
StagnationPressure | 44 | In Stagnation Pressure | Result
StagnationPressureLoss | 405 | Stagnation Pressure Loss | Result
StaticPressure | 50 | In Static Pressure | Result
StaticPressureLoss | 387 | Static Pressure Loss | Result
StaticTemperature | 63 | In Static Temperature | Result
Status | 2 | Status | Input
STPGasFlow | 339 | Flow at STP | Result
Temperature | 51 | In Stag. Temperature | Result
TemperatureChange | 132 | Temperature Change | Input
TemperatureChangeUnit | 133 | Temperature Unit | Input
TwoPhaseQuality | 284 | In Vapor Quality | Result
UniqueName | 84 | Unique Name | Input
UserDefinedFields | 496 | User-Defined Fields | Input
Velocity | 47 | In Velocity | Result
VelocityPressure | 52 | In Velocity Pressure | Result


Element Kind Constants

Navigation: Scripting > References >

Return to chapter overview

Element Kind Constants (Scripting Module)

The Element Kind Constants are available from the FFKindConstants library.

Example Usage:

uses

 FFKindConstants; // Required for Element Kind constants.

var

 NodeIds;

 PipeIds;

begin

 // Use the ekBoundaries constant to get all the Boundaries in the network.

 Count := Network.GetNodes(NodeIds, ekBoundaries);

 ShowMessage('No. of Boundaries = ' + IntToStr(Count));

 // Use the ekSteelPipeorDuct constant to get all the Steel pipes in the network.

 Count := Network.GetPipes(PipeIds, ekSteelPipeorDuct);

 ShowMessage('No. of Steel Pipes = ' + IntToStr(Count));

 // Use the numeric value of the ekCentrifugalPump constant to get all the pumps in the network.

 Count := Network.GetNodes(NodeIds, 501);

 ShowMessage('No. of Pumps = ' + IntToStr(Count));

end;

Kind Constant | Id | Display Name
goText | 102 | Text (Graphic Object)
goImage | 110 | Image (Graphic Object)
goChart | 111 | Chart (Graphic Object)
goSheet | 112 | Sheet (Graphic Object)
goRectangle | 113 | Rectangle (Graphic Object)
goRoundRectangle | 114 | Round Rectangle (Graphic Object)
goCircle | 115 | Circle (Graphic Object)
ekPipes | 2 | Pipes
ekSteelPipeorDuct | 201 | Steel Pipe or Duct
ekStainlessSteelPipeorDuct | 202 | Stainless Steel Pipe or Duct
ekDuctileIronPipe | 203 | Ductile Iron Pipe
ekCastIronPipe | 204 | Cast Iron Pipe
ekCopperPipe | 205 | Copper Pipe
ekAluminiumPipeorDuct | 206 | Aluminium Pipe or Duct
ekAcrylonitrile_Butadiene_StyreneABSPipe | 207 | Acrylonitrile-Butadiene-Styrene ABS Pipe
ekPolyVinylChloride_PVCPipeorDuct | 208 | PolyVinylChloride (PVC) Pipe or Duct
ekPolyethylene_PEPipeorDuct | 209 | Polyethylene (PE) Pipe or Duct
ekPPorPFAPipeorDuct | 210 | PP or PFA Pipe or Duct
ekGlassPipe | 211 | Glass Pipe
ekConcretePipe | 212 | Concrete Pipe
ekAsbestosCementPipe | 213 | Asbestos Cement Pipe
ekFlexibleSmoothorCorrugatedHose | 214 | Flexible Smooth or Corrugated Hose
ekBoundaries | 3 | Boundaries
ekKnownorAssignedPressure | 301 | Known or Assigned Pressure
ekKnownorAssignedFlow | 302 | Known or Assigned Flow
ekReservoirorAccumulatororVessel | 303 | Reservoir or Accumulator or Vessel
ekOpenPipe | 304 | Open Pipe
ekSprinkler | 305 | Sprinkler
ekKnownResistance | 306 | Known Resistance
ekKnownPressureforNonNewtonian_Slurry | 307 | Known Pressure for Non Newtonian/Slurry
ekKnownFlowforNonNewtonian_Slurry | 308 | Known Flow for Non Newtonian/Slurry
ekCirculator_forclosedcircuitsonly_ | 309 | Circulator [for closed circuits only]
ekJunctions | 4 | Junctions
ekConnector_NoResistance | 401 | Connector (No Resistance)
ekBend | 402 | Bend
ekMitreBend | 404 | Mitre Bend
ekTeeJunction | 405 | Tee Junction
ekSymmetricWye | 407 | Symmetric Wye
ekCrossJunction | 408 | Cross Junction
ekBoosters | 5 | Boosters
ekCentrifugalPump | 501 | Centrifugal Pump
ekRotatingPositiveDisplacementPump | 502 | Rotating Positive Displacement Pump
ekFanorCompressor | 503 | Fan or Compressor
ekRotaryVaneorScrewCompressor | 504 | Rotary Vane or Screw Compressor
ekPositiveDisplacementPumporCompressor | 505 | Positive Displacement Pump or Compressor
ekValves | 6 | Valves
ekButterflyValve | 601 | Butterfly Valve
ekDiaphragmValve | 602 | Diaphragm Valve
ekBallValve | 603 | Ball Valve
ekGateValve | 604 | Gate Valve
ekGlobeValve | 605 | Globe Valve
ekAngleValve | 606 | Angle Valve
ekV2Unspecified | 607 | V2 Unspecified
ekBallFloatValve | 608 | Ball Float Valve
ekPlugValve | 609 | Plug Valve
ekPinchValve | 610 | Pinch Valve
ekYGlobeValve | 611 | Y Globe Valve
ekNeedleValve | 612 | Needle Valve
ekSlideValve | 613 | Slide Valve
ekPenstock | 614 | Penstock
ek3_WayValve | 615 | 3-Way Valve
ekFireHydrant | 620 | Fire Hydrant
ekControllers | 7 | Controllers
ekSelfActingFlowController | 701 | Self Acting Flow Controller
ekSelfActingPressureReducer | 702 | Self Acting Pressure Reducer
ekSelfActingPressureSustainer | 703 | Self Acting Pressure Sustainer
ekSelfActingDiffPressureController | 704 | Self Acting Diff Pressure Controller
ekSelfActingTemperatureController | 705 | Self Acting Temperature Controller
ekFlowControlValve | 707 | Flow Control Valve
ekPressureControlValve | 708 | Pressure Control Valve
ekTemperatureControlValve | 709 | Temperature Control Valve
ekLevelControlValve | 710 | Level Control Valve
ekCheckValves | 8 | Check Valves
ekSwingCheckValve | 801 | Swing Check Valve
ekTiltingDiscCheckValve | 802 | Tilting Disc Check Valve
ekPistonOperatedCheckValve | 803 | Piston Operated Check Valve
ekSpringLoadedCheckvalve | 804 | Spring Loaded Check valve
ekFootOperatedCheckValve | 805 | Foot Operated Check Valve
ekGeneralResistances | 9 | General Resistances
ekK_PressureLossCoefficient_ | 901 | K [Pressure Loss Coefficient]
ekKf_Eqleninpipediameters_ | 902 | Kf [Eq len in pipe diameters]
ekKv_FlowCoefficient_ | 903 | Kv [Flow Coefficient]
ekInlineFilter | 904 | Inline Filter
ekPackedBed | 905 | Packed Bed
ekCyclone | 906 | Cyclone
ekLabyrinthSeal | 907 | Labyrinth Seal
ekCentrifuge | 908 | Centrifuge
ekExpansionJoint_StuffingBox | 909 | Expansion Joint / Stuffing Box
ekPipeCoil | 910 | Pipe Coil
ekTubeBundle_Flowthroughtubes | 911 | Tube Bundle - Flow through tubes
ekTubeBundle_Flowaroundtubes | 912 | Tube Bundle - Flow around tubes
ekConstantHeadLoss | 913 | Constant Head Loss
ekUserDefinedGeneric | 1301 | User Defined Generic
ekSizeChange | 10 | Size Change
ekThinSharpEdgedOrifice | 1001 | Thin Sharp Edged Orifice
ekThickOrifice_Orificelength_dia_0_015 | 1002 | Thick Orifice -Orifice length/dia >0.015
ekInlineNozzle | 1003 | Inline Nozzle
ekVenturiTube | 1004 | Venturi Tube
ekReducer_Expander | 1005 | Reducer / Expander
ekAbruptSizeChange | 1006 | Abrupt Size Change
ekReliefDevices | 11 | Relief Devices
ekReliefValve | 1101 | Relief Valve
ekBurstingDisk | 1102 | Bursting Disk
ekFlareStack | 1103 | Flare Stack
ekHeatExchangers | 12 | Heat Exchangers
ekShellandTubeHeatExchanger | 1201 | Shell and Tube Heat Exchanger
ekPlateHeatExchanger | 1202 | Plate Heat Exchanger
ekCoolingTower_WaterSideOnly | 1204 | Cooling Tower (Water Side Only)
ekJacketedVessel_ProcessSideOnly | 1205 | Jacketed Vessel (Process Side Only)
ekKnockOutPot_Vapor_LiquidSeparator | 1206 | Knock Out Pot (Vapor/Liquid Separator)


Unit Ids

Navigation: Scripting > References >

Return to chapter overview

Unit Ids (Scripting Module)

Example Usage:

// Convert 100 l/min to usgpm using Unit Names

FlowInUSGPM := Units.Convert('l/min', 'usgpm', 100);

Output.Add(FlowInUSGPM);

// Convert 100 l/min to usgpm using Unit Ids

FlowInUSGPM := Units.Convert(858, 859, 100);

Output.Add(FlowInUSGPM);

Group/Unit | Id
Absolute Head | 26
cm Fluid a | 1253
ft Fluid a | 1255
in Fluid a | 1254
m Fluid a | 1251
mm Fluid a | 1252
Absolute Pressure | 24
atm | 1162
bar a | 1160
ft Water a | 1163
in Mercury a | 1155
in Water a | 1155
kgf/cm2 a | 1159
kPa a | 1156
m Water a | 1164
mbar a | 1153
mm Water a | 1165
mmHg a | 1154
MPa a | 1161
Pa a | 1151
psf a | 1152
psi a | 1158
Area | 1
cm2 | 3
ft2 | 5
in2 | 4
km2 | 7
m2 | 1
mile2 | 8
mm2 | 2
yd2 | 6
Calorific Value | 2
Btu/ft3 | 54
Chu/ft3 | 55
J/m3 | 51
kCal/m3 | 53
kJ/m3 | 52
MJ/m3 | 56
Control Valve Cv | 36
Cv usgpm/psi | 1451
Kv l/min/bar | 1453
Kv m3/h/bar | 1454
Kv m3/h/kPa | 1452
Density | 20
g/cm3 | 953
kg/dm3 | 954
kg/l | 955
kg/m3 | 951
lb/ft3 | 952
lb/in3 | 956
Dynamic Viscosity | 3
cP | 104
kg/m h | 102
kgf s/m2 | 107
lb/ft h | 103
lb/ft s | 106
lbf h/ft2 | 109
lbf s/ft2 | 108
Pa s | 101
poise | 105
Energy | 4
Btu | 155
calorie | 153
Chu | 156
ft lbf | 152
hp/h | 159
joule | 151
kCal | 157
kJ | 154
kW/h | 160
MJ | 158
therm | 161
Flow | 29
cm3/min | 868
ft3/h | 856
ft3/min | 862
ft3/s | 864
g/s | 504
in3/min | 869
kg/h | 503
kg/min | 506
kg/s | 501
l/h | 852
l/min | 858
l/s | 863
lb/h | 502
lb/min | 505
lb/s | 513
m3/day | 857
m3/h | 861
m3/min | 865
m3/s | 851
ml/min | 867
ml/s | 853
mm3/min | 866
MMft3/day | 872
tonne/day | 507
tonne/h | 510
ukgph | 855
ukgpm | 860
ukTon/day | 508
ukTon/h | 511
usBarrel/day | 873
usBarrel/min | 870
usgph | 854
usgpm | 859
usTon/day | 509
usTon/h | 512
yd3/min | 871
Force | 5
kgf | 205
kN | 206
lbf | 204
lbF/s | 202
N | 201
pdl | 203
Gauge Head | 27
cm Fluid g | 1303
ft Fluid g | 1305
in Fluid g | 1304
m Fluid g | 1301
mm Fluid g | 1301
Gauge Pressure | 25
bar g | 1210
ft Water g | 1212
in Mercury g | 1207
in Water g | 1205
kgf/cm2 g | 1209
kPa g | 1206
m Water g | 1213
mbar g | 1203
mm Water g | 1214
mmHg g | 1204
MPa g | 1211
Pa g | 1201
psf g | 1202
psi g | 1208
Gravity | 23
cm/s2 | 1102
ft/s2 | 1103
m/s2 | 1101
Head | 32
cm Fluid a | 1253
cm Fluid g | 1303
ft Fluid a | 1255
ft Fluid g | 1305
in Fluid a | 1254
in Fluid g | 1304
m Fluid a | 1251
m Fluid g | 1301
mm Fluid a | 1252
mm Fluid g | 1301
Head Drop | 28
cm Fluid | 1353
ft Fluid | 1355
in Fluid | 1354
m Fluid | 1351
mm Fluid | 1352
Heat Capacity | 6
Btu/lb F | 255
ft lbf/lb F | 253
J/kg C | 251
kCal/kg C | 256
kgf m/kg C | 254
kJ/kg C | 252
Heat Flux | 21
Btu/ft2 h | 1003
Chu/ft2 h | 1004
kCal/ft2 h | 1005
kCal/m2 h | 1002
kW/m2 | 1006
W/m2 | 1001
Heat Transfer Coefficient | 7
Btu/ft2h F | 303
Btu/ft2s F | 306
cal/cm2s C | 307
kCal/ft2h C | 304
kCal/m2h C | 302
kW/m2 C | 305
W/m2 C | 301
Kinematic Viscosity | 8
cSt | 353
ft2/h | 354
ft2/s | 358
in2/h | 352
in2/s | 357
m2/h | 356
m2/s | 351
stoke | 355
Length | 9
cm | 403
ft | 405
in | 404
km | 407
m | 401
mile | 408
mm | 402
yd | 406
Mass | 10
cwt | 455
g | 452
kg | 451
lb | 454
oz | 453
tonne | 457
ukTon | 458
usTon | 456
Mass Flow | 11
g/s | 504
kg/h | 503
kg/min | 506
kg/s | 501
lb/h | 502
lb/min | 505
lb/s | 513
tonne/day | 507
tonne/h | 510
ukTon/day | 508
ukTon/h | 511
usTon/day | 509
usTon/h | 512
Power | 12
Btu/h | 552
Chu/h | 553
ft lbf/s | 555
hp | 556
kCal/h | 554
kW | 557
MW | 558
Watt | 551
Pressure | 31
atm | 1162
bar a | 1160
bar g | 1210
ft Water a | 1163
ft Water g | 1212
in Mercury a | 1155
in Mercury g | 1207
in Water a | 1155
in Water g | 1205
kgf/cm2 a | 1159
kgf/cm2 g | 1209
kPa a | 1156
kPa g | 1206
m Water a | 1164
m Water g | 1213
mbar a | 1153
mbar g | 1203
mm Water a | 1165
mm Water g | 1214
mmHg a | 1154
mmHg g | 1204
MPa a | 1161
MPa g | 1211
Pa a | 1151
Pa g | 1201
psf a | 1152
psf g | 1202
psi a | 1158
psi g | 1208
Pressure Drop | 13
atm | 611
bar | 610
ft Water | 613
in Mercury | 607
in Water | 605
kgf/cm2 | 609
kPa | 606
m Water | 614
mbar | 603
mm Water | 615
mmHg | 604
MPa | 612
Pa | 601
psf | 602
psi | 608
Pressure Gradient | 35
Pa/ft | 1402
Pa/m | 1401
psi/ft | 1403
psi/m | 1404
Pressure Head | 33
atm | 1162
bar a | 1160
bar g | 1210
cm Fluid a | 1253
cm Fluid g | 1303
ft Fluid a | 1255
ft Fluid g | 1305
ft Water a | 1163
ft Water g | 1212
in Fluid a | 1254
in Fluid g | 1304
in Mercury a | 1155
in Mercury g | 1207
in Water a | 1155
in Water g | 1205
kgf/cm2 a | 1159
kgf/cm2 g | 1209
kPa a | 1156
kPa g | 1206
m Fluid a | 1251
m Fluid g | 1301
m Water a | 1164
m Water g | 1213
mbar a | 1153
mbar g | 1203
mm Fluid a | 1252
mm Fluid g | 1301
mm Water a | 1165
mm Water g | 1214
mmHg a | 1154
mmHg g | 1204
MPa a | 1161
MPa g | 1211
Pa a | 1151
Pa g | 1201
psf a | 1152
psf g | 1202
psi a | 1158
psi g | 1208
Pressure Head Drop | 34
atm | 611
bar | 610
cm Fluid | 1353
ft Fluid | 1355
ft Water | 613
in Fluid | 1354
in Mercury | 607
in Water | 605
kgf/cm2 | 609
kPa | 606
m Fluid | 1351
m Water | 614
mbar | 603
mm Fluid | 1352
mm Water | 615
mmHg | 604
MPa | 612
Pa | 601
psf | 602
psi | 608
Slip | 38
l/min/bar | 1551
ukgpm/psi | 1553
usgpm/psi | 1552
Slip Volume | 37
litres | 1501
uk gallons | 1503
us gallons | 1502
Specific Energy | 22
Btu/lb | 1054
ft lbf/lb | 1052
J/kg | 1051
kcal/kg | 1055
kgf m/kg | 1053
kJ/kg | 1057
MJ/kg | 1056
Temperature | 14
C | 652
F | 653
K | 651
R | 654
Thermal Conductivity | 15
Btu in/ft2 h F | 702
Btu/ft h F | 705
cal/cm s C | 706
kCal in/ft2 h C | 703
kCal/m h C | 704
kW/m C | 707
W/m C | 701
Torque | 16
dyn cm | 756
kgf m | 755
lbf ft | 754
lbf in | 753
N m | 751
pdl ft | 752
Velocity | 19
cm/s | 904
ft/min | 903
ft/s | 906
km/h | 905
m/s | 901
mile/h | 907
mm/s | 902
Viscosity | 30
cP | 104
cSt | 353
ft2/h | 354
ft2/s | 358
in2/h | 352
in2/s | 357
kg/m h | 102
kgf s/m2 | 107
lb/ft h | 103
lb/ft s | 106
lbf h/ft2 | 109
lbf s/ft2 | 108
m2/h | 356
m2/s | 351
Pa s | 101
poise | 105
stoke | 355
Volume | 17
cm3 | 804
ft3 | 809
in3 | 805
litre | 806
m3 | 801
ml | 803
mm3 | 802
ukgal | 808
usBarrel | 810
usgal | 807
yd3 | 811
Volumetric Flow | 18
cm3/min | 868
ft3/h | 856
ft3/min | 862
ft3/s | 864
in3/min | 869
l/h | 852
l/min | 858
l/s | 863
m3/day | 857
m3/h | 861
m3/min | 865
m3/s | 851
ml/min | 867
ml/s | 853
mm3/min | 866
MMft3/day | 872
ukgph | 855
ukgpm | 860
usBarrel/day | 873
usBarrel/min | 870
usgph | 854
usgpm | 859
yd3/min | 871


Graphics Color Constants

Navigation: Scripting > References >

Return to chapter overview

Graphics Color Constants (Scripting Module)

The Graphics Color Constants are available from the Graphics library.

Example Usage:

uses

 Graphics; // Include this to get access to clGreen

begin

 // Set the background color of Node 1 to Green.

 Network.Set(1, 'BackgroundColor', clGreen);

end;

Standard Colors
clNone | clBlack | clMaroon
clGreen | clOlive | clNavy
clPurple | clTeal | clGray
clSilver | clRed | clLime
clYellow | clBlue | clFuchsia
clAqua | clLtGray | clDkGray
clWhite | clMoneyGreen | clSkyBlue
clCream | clMedGray |
System Colors
clSystemColor | clScrollBar | clBackground
clActiveCaption | clInactiveCaption | clMenu
clWindow | clWindowFrame | clMenuText
clWindowText | clCaptionText | clActiveBorder
clInactiveBorder | clAppWorkSpace | clHighlight
clHighlightText | clBtnFace | clBtnShadow
clGrayText | clBtnText | clInactiveCaptionText
clBtnHighlight | cl3DdkShadow | cl3DLight
clInfoText | clInfoBk | clHotLight
clGradientActiveCaption | clGradientInactiveCaption | clMenuHighlight
clMenuBar |  |
Web Colors
clWebSnow | clWebFloralWhite | clWebLavenderBlush
clWebOldLace | clWebIvory | clWebCornSilk
clWebBeige | clWebAntiqueWhite | clWebWheat
clWebAliceBlue | clWebGhostWhite | clWebLavender
clWebSeashell | clWebLightYellow | clWebPapayaWhip
clWebNavajoWhite | clWebMoccasin | clWebBurlywood
clWebAzure | clWebMintcream | clWebHoneydew
clWebLinen | clWebLemonChiffon | clWebBlanchedAlmond
clWebBisque | clWebPeachPuff | clWebTan
clWebYellow | clWebDarkOrange | clWebRed
clWebDarkRed | clWebMaroon | clWebIndianRed
clWebSalmon | clWebCoral | clWebGold
clWebTomato | clWebCrimson | clWebBrown
clWebChocolate | clWebSandyBrown | clWebLightSalmon
clWebLightCoral | clWebOrange | clWebOrangeRed
clWebFirebrick | clWebSaddleBrown | clWebSienna
clWebPeru | clWebDarkSalmon | clWebRosyBrown
clWebPaleGoldenrod | clWebLightGoldenrodYellow | clWebOlive
clWebForestGreen | clWebGreenYellow | clWebChartreuse
clWebLightGreen | clWebAquamarine | clWebSeaGreen
clWebGoldenRod | clWebKhaki | clWebOliveDrab
clWebGreen | clWebYellowGreen | clWebLawnGreen
clWebPaleGreen | clWebMediumAquamarine | clWebMediumSeaGreen
clWebDarkGoldenRod | clWebDarkKhaki | clWebDarkOliveGreen
clWebDarkgreen | clWebLimeGreen | clWebLime
clWebSpringGreen | clWebMediumSpringGreen | clWebDarkSeaGreen
clWebLightSeaGreen | clWebPaleTurquoise | clWebLightCyan
clWebLightBlue | clWebLightSkyBlue | clWebCornFlowerBlue
clWebDarkBlue | clWebIndigo | clWebMediumTurquoise
clWebTurquoise | clWebCyan | clWebAqua
clWebPowderBlue | clWebSkyBlue | clWebRoyalBlue
clWebMediumBlue | clWebMidnightBlue | clWebDarkTurquoise
clWebCadetBlue | clWebDarkCyan | clWebTeal
clWebDeepskyBlue | clWebDodgerBlue | clWebBlue
clWebNavy | clWebDarkViolet | clWebDarkOrchid
clWebMagenta | clWebFuchsia | clWebDarkMagenta
clWebMediumVioletRed | clWebPaleVioletRed | clWebBlueViolet
clWebMediumOrchid | clWebMediumPurple | clWebPurple
clWebDeepPink | clWebLightPink | clWebViolet
clWebOrchid | clWebPlum | clWebThistle
clWebHotPink | clWebPink | clWebLightSteelBlue
clWebMediumSlateBlue | clWebLightSlateGray | clWebWhite
clWebLightgrey | clWebGray | clWebSteelBlue
clWebSlateBlue | clWebSlateGray | clWebWhiteSmoke
clWebSilver | clWebDimGray | clWebMistyRose
clWebDarkSlateBlue | clWebDarkSlategray | clWebGainsboro
clWebDarkGray | clWebBlack |


Enumerated Types

Enumerated Types

Type | Values
3WayValveDuty | 1 = Mixing (all ports open) 2 = Diverting (2 ports open)
AccumulatorRDRatio | 0 = 0 1 = 0.02 2 = 0.04 3 = 0.06 4 = 0.1 5 = >0.15
CompressorHeatTransfer | 0 = Ignore Heat Loss/Gain 1 = Fixed Temperature Change 2 = Fixed Transfer Rate 4 = Adiabatic Compression
ControllerMeasurementLocation | 0 = Upstream 1 = Downstream
ControllerMeasurementType | 0 = Stagnation Pressure 1 = Static Pressure
CrossBranchAngles | 90 = 90°
CrossJunctionType | 0 = Idelchik
CycloneEquation | 0 = Basic Principles 1 = Miller and Lissman 2 = Shepherd and Lapple 3 = Casal and Martinez-Benet
CycloneInletGeometry | 0 = Cylindrical 1 = Rectangular/Square
ElementTextAlignment | 0 = Top 1 = Bottom 2 = Left 3 = Right
ExchangerFluidSide | 0 = Tubeside 1 = Shellside
ExchangerPitchType | 0 = In-Line 1 = Staggered
ExpansionJointType | 0 = Lyre Bend 1 = II Shaped Bend 2 = Stuffing Box
FlashTypeCalculation | 0 = Isenthalpic Flash
FlowDirection | 1 = Out of Network -1 = Into Network
FlowScaleFactorType | 0 = None 1 = Fixed Value
FluidTypeNN | 1 = Newtonian/NN-NonSettling 4 = Heterogeneous Settling 14 = Pulp/Paper Stock
FluidTypeTwoPhase | 1 = Newtonian 9 = Two Phase
FluidTypeTwoPhaseNN | 1 = Newtonian/NN-NonSettling 4 = Heterogeneous Settling 9 = Two Phase 14 = Pulp/Paper Stock
FrictionModel | 0 = Moody 1 = Hazen Williams 2 = Fixed Friction Factor
Geometry | 0 = Cylindrical 1 = Rectangular/Square 2 = Annulus
HeatExchangerLossModel | 0 = Standard Relationships 1 = Manufacturer Loss Data 2 = Fixed Value
HeatLossModel | 0 = Ignore Heat Loss/Gain 1 = Fixed Temperature Change 2 = Fixed Transfer Rate 3 = Do Heat Transfer Calculation
HeatTransferModel | 0 = Ignore Heat Loss/Gain 1 = Fixed Temperature Change 2 = Fixed Transfer Rate
HideShow | 0 = Hide 1 = Show
IdelchikTeeAngles | 90 = 90° 60 = 60° 45 = 45° 30 = 30° 15 = 15°
JunctionConstruction | 0 = Welded, Flanged or Smooth 1 = Screwed or Sharp Edged
KLossBasis | 0 = Upstream Velocity 1 = Downstream Velocity
KOPotPressureModel | 0 = Auto Calculate 1 = Fixed Pressure
MillerTeeAngles | 90 = 90° 45 = 45°
MitreType | 1 = Miller 3 = Crane
NNSolidsPercent | 0 = Cw Weight % 1 = Cv Volume %
NozzleEqn | 0 = ISO 5157 Nozzle 1 = Long Radius Nozzle
OrificeEqn | 0 = ISO 5167
OrificeSelectionCriteria | 0 = Size for Flow 1 = Size for Pressure Loss
PhaseState | 0 = Undefined 1 = Liquid 2 = Saturated Liquid 3 = Gas or Vapor 4 = Slurry 5 = Solid/Gas 6 = Non-Newtonian 7 = Solid 8 = 2 Phase Frozen Liquid Vapor 9 = 2 Phase Single Liquid Vapor 10 = 2 phase Multicomponent Liquid Vapor 11 = Forced Liquid 12 = Forced Gas or Vapor 13 = Forced 2 Phase 14 = Pulp Paper Stock
PipeOutlet | 0 = Ignore Entry/Exit Loss 1 = Flush Sharp Edged 2 = Flush Bellmouth 3 = Inward Projecting
PressureControllerType | 0 = Pressure Sustaining 1 = Pressure Reducing
PulpPaperModel | 0 = Moller 1 = TAPPI (TIP 0310-12)
PumpSelectionCriteria | 0 = Size for Flow 1 = Size for Pressure Rise
ReducerType | 0 = Concentric 1 = Eccentric
ReliefValveOrificeSize | 0 = D - 0.11in2 / 71mm2 1 = E - 0.196in2 / 127mm2 2 = F - 0.307in2 / 198mm2 3 = G - 0.503in2 / 325mm2 4 = H - 0.785in2 / 506mm2 5 = J - 1.287in2 / 830mm2 6 = K - 1.838in2 / 1185mm2 7 = L - 2.853in2 / 1840mm2 8 = M - 3.60in2 / 2320mm2 9 = N - 4.34in2 / 2800mm2 10 = P - 6.38in2 / 4120mm2 11 = Q - 11.05in2 / 7130mm2 12 = R - 16.0in2 / 10300mm2 13 = T - 26.0in2 / 16770mm2
SafetyReliefValveModel | 0 = Internal 1 = Iso 4162
SlurryFlowBasis | 0 = Total Slurry Flow 1 = Solids Only 2 = Carrier Only
SlurryPumpDerating | 0 = None 1 = Fixed Reduction Ratio 2 = King 3 = HI Guidelines
TeeJunctionType | 0 = Idelchik 1 = Miller 3 = Crane 4 = SAE
TwoPhaseFlowBasis | 0 = Total Flow 1 = Liquid Only 2 = Gas Only
UserDefinedEquation | 0 = §P = K + ABQ^n + CDQ^m
UserDefinedTermType | 0 = Fixed Value 1 = Inlet Density 2 = Inlet Viscosity 3 = Inlet Pressure
VenturiTubeType | 0 = Welded 1 = Cast 2 = Machined
VesselType | 0 = Cylindrical Flat Bottom 1 = Rectangular Flat Bottom
WyeJunctionType | 0 = Idelchik 4 = SAE


Standard Routines

Navigation: Scripting > References >

Return to chapter overview

Standard Routines (Scripting Module)

The Scripting Module provides the following types of Standard Routines:

§ Math/Number

§ String

§ File

§ Date & Time

§ Miscellaneous

Math/Number Routines

The following functions and procedures are available:

Routine | Description
Abs(X: Number): Number | Returns the absolute value of the argument, X. X is an integer-type or real-type expression.
ArcTan(X: Float): Float | Returns the arctangent of X. X is a real-type expression that gives an angle in radians.
Cos(X: Float): Float | Returns the cosine of the angle X. X is a real-type expression that represents an angle in radians.
Dec(var X: Integer; N: Integer = 1) | Decrements a variable by 1 or N.
Exp(X: Float): Float | Returns the exponential of X. Exp returns the value of e raised to the power of X, where e is the base of the natural logarithms.
FloatToStr(Value: Float): String | Converts a floating point value to a string.
FormatFloat(const Format: String; Value: Float): String | Formats a floating point value.
Frac(X: Float): Float | Returns the fractional part of a real number.
High(X: Type): Integer | Returns the highest value in the range of an argument.
Inc(var X: Integer; N: Integer = 1) | Increments an ordinal value by one or N.
Int(X: Float): Float | Returns the integer part of a real number.
IntToHex(Value, Digits: Integer): String | Returns the hexadecimal representation of an integer.
IntToStr(Value: Integer): String | Converts an integer to a string.
Ln(X: Float): Float | Returns the natural logarithm (Ln(e) = 1) of the real-type expression X.
Log10(X: Float): Float | Calculates log base 10.
Low(X: Type): Integer | Returns the lowest value in a range.
Odd(X: Integer): Boolean | Returns True if X is an odd number.
Ord(X: Char): Byte | Returns the ordinal value of an ordinal-type expression.
Power(Base: Float; const Exponent: Float): Float | Raises Base to any power.
Random(ARange: Integer): Integer | Generates random numbers within a specified range.
Round(X: Float): Integer | Returns the value of X rounded to the nearest whole number.
Sin(X: Float): Float | Returns the sine of the angle in radians.
Sqr(X: Number): Float | Returns the square of a number.
Sqrt(X: Number): Float | Returns the square root of X.
StrToFloat(S: String): Float | Converts a given string to a floating-point value.
StrToInt(S: String): Integer | Converts a string that represents an integer to a number.
StrToIntDef(S: String; Default: Integer): Integer | Converts a string that represents an integer to a number with default value if the string is invalid.
Tan(X: Float): Float | Returns the tangent of X.
Trunc(X: Float): Integer | Truncates a real number to an integer.

String Routines

The following functions and procedures are available:

Routine | Description
AnsiCompareStr(S1, S2: String): Integer | Compares S1 to S2, with case sensitivity. Returns a value less than 0 if S1 < S2, a value greater than 0 if S1 > S2, and returns 0 if S1 = S2.
AnsiCompareText(S1, S2: String): Integer | Compares S1 to S2, without case sensitivity. Returns a value less than 0 if S1 < S2, a value greater than 0 if S1 > S2, and returns 0 if S1 = S2.
AnsiLowerCase(S: String): String | Returns a string that is a copy of the given string converted to lowercase.
AnsiUpperCase(S: String): String | Returns a string that is a copy of the given string converted to upper case.
Chr(X: Integer): Char | Returns the character with the ordinal value (ASCII value) of the byte-type expression, X.
CompareStr(S1, S2: String): Integer | Compares S1 to S2, with case-sensitivity. The return value is less than 0 if S1 is less than S2, 0 if S1 equals S2, or greater than 0 if S1 is greater than S2.
CompareText(S1, S2: String): Integer | Compares S1 to S2, without case-sensitivity. The return value is less than 0 if S1 is less than S2, 0 if S1 equals S2, or greater than 0 if S1 is greater than S2.
Copy(S: String; Index: Integer; Count: Integer): String | Returns a substring of a string.
Delete(var S: String; Index: Integer; Count: Integer) | Removes a substring from a string.
Format |
Insert(Substr: String; var Dest: String; Index: Integer) | Inserts a substring into a string beginning at a specified point.
Length(S: String): Integer | Returns the number of characters in a string.
LowerCase(S: String): String | Converts a string to lowercase.
Pos(substr: String; str: String): Integer | Returns the index value of the first character in a specified substring that occurs in a given string.
Trim(S: String): String | Trims leading and trailing spaces from a string.
TrimLeft(S: String): String | Trims leading spaces from a string.
TrimRight(S: String): String | Trims trailing spaces from a string.
UpperCase(S: String): String | Converts a string to uppercase.

File Routines

The following file-handling routines are available:

Routine | Description
Append(FileHandle: Integer) | Prepares an existing file for adding text to the end.
AssignFile(var FileHandle: Integer; FileName: String) | Associates the name of an external file with FileHandle.
Chdir(S: String) | Changes the current directory to the path specified by S. The path can include a drive specifier, which causes the current drive to be changed as well.
CloseFile(var FileHandle: Integer) | Closes the external file associated with FileHandle.
EOF(FileHandle: Integer): Boolean | Tests whether the file position is at the end of a file.
Execute(Filename: String): Integer | Calls Window's ShellExecute with the 'open' parameter for the specified Filename.
FileExists(Filename: String): Boolean | Returns True if the specified Filename exists; False, otherwise.
FilePos(FileHandle: Integer): Integer | Returns the current file position.
FileSize(FileHandle: Integer): Integer | Returns the number of records in a file.
GetTempFilename: String; | Returns a temporary filename.
GetTempFilenameEx(Path: String): String | Returns a temporary filename, in the specified path.
ReadLn(FileHandle: Integer): String | Reads a line of text from a file.
Reset(var FileHandle: Integer) | Opens the existing external file with the name assigned to FileHandle by AssignFile.
Rewrite(var FileHandle: Integer) | Creates a new external file with the name assigned to FileHandle by AssignFile.
Write(FileHandle: Integer; S: String) | Writes a string to a file, but does not add a new line.
WriteLn(FileHandle: Integer; S: String) | Writes a string to a file, adding a new line.

Example:

var

 myFile;

begin

 // Try to open the Test.txt file for writing to

 AssignFile(myFile, 'c:\Test.txt');

 try

   ReWrite(myFile);

   // Write a couple of words to this file

   WriteLn(myFile, 'Hello');

   WriteLn(myFile, 'World');

 finally

   // No matter what happens, close the file.

   CloseFile(myFile);

 end;

end;

Date & Time Routines

The following functions and procedures are available:

Routine | Description
Date: Integer | Returns the current local date as a TDateTime value. The time portion of the value is 0 (midnight).
DateTimeToStr(Date: TDateTime): String | Converts a TDateTime value to a string.
DateToStr(Date: TDateTime): String | Converts a TDateTime value to a string.
DayOfWeek(Date: TDateTime): Integer | Returns the day of the week for a specified date.
DecodeDate(DateTime: TDateTime; var Year, Month, var Day: Word) | Returns Year, Month, and Day values for a TDateTime value.
DecodeTime(DateTime: TDateTime; var Hour, Min, Sec, MSec: Word) | Breaks a TDateTime value into hours, minutes, seconds, and milliseconds.
EncodeDate(Year: Word; Month: Word; Day: Word): TDateTime; | Returns a TDateTime value that represents a specified Year, Month, and Day.
EncodeTime Hour: Word; Min: Word; Sec: Word; MSec: Word): TDateTime | Returns a TDateTime value for a specified Hour, Min, Sec, and MSec.
FormatDateTime(const Format: String; DateTime: TDateTime): String | Formats a TDateTime value using Format.
IncMonth(DateTime: TDateTime; NumberOfMonths: Integer): TDateTime | Returns a date shifted by a specified number of months.
Now: TDateTime | Returns the current date and time.
StrToDate(S: String): TDateTime | Converts a string to a TDateTime value.
StrToDateTime(S: String): TDateTime | Converts a string to a TDateTime value.
StrToTime (S: String): TDateTime | Converts a string to a TDateTime value.
Time: TDateTime | Returns the current time.
TimeToStr(DateTime: TDateTime): String | Returns a string that represents a TDateTime value.

Example:

var

 Today;

begin

 Today := Date;

 ShowMessage(DateToStr(Today));

end;

Miscellaneous Routines

The following functions and procedures are available:

Routine | Description
Assigned(V: Type): Boolean | Returns True if variable V is assigned.
Beep | Beep generates a message beep.
InputQuery(Acaption, APrompt: String; var Value: String): Boolean | Displays an input dialog that lets the user enter a string, double, or integer.
Interpret(Ascript) | Executes the script source code specified by Ascript parameter.
IsValidIdent(S: String): Boolean | Returns true if the given string is a valid identifier. An identifier is defined as a character from the set ['A'..'Z', 'a'..'z', '_'] followed by zero or more characters from the set ['A'..'Z', 'a'..'z', '0..'9', '_'].
Machine | Returns the current virtual machine executing the script.
Raise(Error: Integer) | Create an exception.
Scripter | Scripter returns the current scripter component.
SetOf(Set: Array) | SetOf returns a set from the array passed. For example: MyFontStyle := SetOf([fsBold, fsItalic]);
ShowMessage(Msg: String) | Displays a message box with an OK button.
Sleep(NumSeconds: Integer) | Delay program execution for the specified number of seconds.
VarArrayCreate(Bounds: IntegerArray; AVarType: Integer): Variant | Creates a variant array with the specified Bounds and the element type given by AVarType.
VarArrayHighBound(A: Variant; Dim: Integer = 0): Integer | Returns the high bound for a dimension in a variant array.
VarArrayLowBound(A: Variant; Dim: Integer = 0): Integer | Returns the low bound of a dimension in a variant array.
VarIsNull(V: Variant): Boolean | Indicates whether the specified variant is Null.
VarToStr(V: Variant): String | Converts a variant's value to a string.


Libraries

Standard Libraries

In addition to the Standard Routines, which are implicitly available in all scripts, the Scripting Module provides access to several libraries of code, variables, and constants:

Library | Description
System |
Graphics | The Graphics library is the main provided to allow access to the color constants. See Graphics Color Constants for a full list of these.
FFConstants | Contains constants used throughout scripts.
FFErrors | Contains constants and routines for displaying network calculation errors.
FFKindConstants | Contains constants for all the different element kinds available in FluidFlow.

Note: The FFConstants, FFErrors, and FFKindConstants libraries are located in the "[FluidFlow3 folder]\Default\Scripts" folder, and will be continually added to. You should not modify any of these files and they will be updated by new releases of FluidFlow.

To access the routines and constants in these libraries you must explicitly specify the name of the library in a uses clause.

Example:

uses

 Graphics,        // Include this to get access to clRed and ColorToString.

 FFKindConstants; // Required for Element Kind constants.

var

 NodeIds;

begin

 s := ColorToString(clRed);

 ShowMessage(s);

 // Use the ekBoundaries constant to fill NodeIds with all the

 // Boundaries in the network.

 Count := Network.GetNodes(NodeIds, ekBoundaries);

 ShowMessage('No. Of Boundaries = ' + IntToStr(Count));

end;

User-Defined Libraries

You can also create your own libraries of commonly used routines. These libraries should be stored in your "\Preferences\[Username]\Scripts" folder, and must be named with the PSC extension. As with the Standard Libraries, you must explicitly include the name of the library in your script's uses clause.

To create a library, create a new Flowsheet and use the Scripting window to enter your library code. Select the File | Save To File... menu item and save the file to your '\Preferences\[Username]\Scripts" folder, ensuring that you name the file with a .PSC extension.

Example Library:

// MyLibrary.psc

const

 mlOne = 1;

 mlTwo = 2;

 mlThree = 3;

procedure TestMyLibrary(Msg: Integer);

begin

 case Msg of

   mlOne: ShowMessage('One');

   mlTwo: ShowMessage('Two');

   mlThree: ShowMessage('Three');

   else

     ShowMessage('Unknown');

 end;

end;

Example Usage:

uses

 MyLibrary;

begin

 TestMyLibrary(mlThree);

end;


Custom Record/Structure Types

TRecord

This class allows you to simulate a Pascal record type. You can create an object of this class with any number of fields, and get and set the values of these fields.

Function/Property | Description
CreateFields(Fields: string): TRecord | Creates a TRecord object with the specified Fields.
AddFields(Fields:string) | Adds the specified fields to the record object
GetName(Index: Integer): string | Gets the name of the Field at the specified Index.
GetValue(IndexOrName: Variant): Variant | Gets the value of a Field given an Index or field Name.
SetName(Index: Integer; Name: string) | Sets the name of the Field at the specified Index.
SetValue(IndexOrName: Variant; Value: Variant) | Sets the value of a Field given an Index or field Name.
Value[IndexOrName: Variant]: Variant | Gets/Sets the value of a Field given an Index or field Name. Note, this is the "default" property for a TRecord object so you do not need to use the "Value" part.
AsText: string | Returns all the fields and values of a TRecord object.

Getting and Setting TRecord field values

Example:

var

 r: TRecord;

begin

 // Create a record with 2 fields

 r := TRecord.CreateFields('FirstName,Surname');

 // Set the field values - you can use [] or GetValue + SetValue methods to access the fields.

 r['FirstName'] := 'John';

 r.SetValue('Surname', 'Smith');

 ShowMessage(r.GetValue('FirstName'));

 r.SetValue('FirstName', 'Mike');

 // AsText will output each field: value pair.

 Output.Add(r.AsText);

end;

Creating Sub-records

A field in a TRecord can also be a TRecord itself. To specify that a field is a sub-record, use '#' as the first character in its name.

Example:

var

 person: TRecord;

 address: TRecord;

begin

 // Using the # character means that the record's field will actually refer to another record.

 person := TRecord.CreateFields('FirstName,Surname,Age,#Address');

 person['FirstName'] := 'John';

 person['Surname'] := 'Smith';

 person['Age'] := 21;

 // To access a record within a record you need to use another TRecord. Note you do not need to "create" a TRecord, as it will already be instantiated for you.

 address := person['Address'];

 address.AddFields('Address1,Address2,City,State');

 // You can modify address's fields via the address "pointer", or by using a dot (.) within the person pointer.

 address['Address1'] := 'Apartment 999';

 person['Address.Address2'] := '999 Main Street';

 Output.Add(person.AsText);

end;


Miscellaneous

Navigation: Scripting >

Return to chapter overview

Miscellaneous - Scripting


Fortis BC SCC

FluidFlow includes a script which allows staff at Fortis BC to create a Station Capacity Chart (SCC). Prior to plotting the chart, the user must set the gas regulators to solve using either the ISA equation or Universal Equation. This can be completed by selecting: Database | Gas Regulators. This will open a new dialog titled: "Database Editor - Gas Only Equipment" (see Figure 1).

Select the appropriate regulator from the list on the left hand side. This will then display the relevant product data on the right hand side. Click on the field titled Regulator Equation to switch between the ISA equation or Universal Equation. When you have selected the desired method, select OK.

Gas Regulator Database

Figure 1: Gas Regulator Database.

At this stage, you can now select the script icon at the top of the flowsheet toolbar (Figure 2). Select the option titled: "Generate Station Capacity Chart".

Figure 2: Script Menu.

This will open a new dialog where you can set the station inlet start and end pressure and also, the desired "Runs" you wish to simulate (Figure 3).

Fortis Script Runs

Figure 3: Generate Station Capacity Chart Dialog.

When you have completed the data entry, select "Run". The software will now automatically run through the simulation and when complete, export the SCC to Excel. It is recommended you don't attempt to complete other tasks within FluidFlow or Excel during this process.

The software will export a detailed table of calculated results along with the chart. Figures 4 & 5 provides an overview of the data exported to excel.

Fortis SCC Chart

Figure 4: Station Capacity Table of Results.

Figure 5: Station Capacity Chart.


Navigation: »No topics above this level«

Return to chapter overview

Design Examples


Auto Equipment Sizing

FluidFlow includes a powerful auto-size feature which allows engineers to automatically size a range of elements such as pipes, centrifugal pumps, fans, compressors, PD pumps, orifice plates, nozzles, pressure and flow control valves. Pressure relief valves and bursting disks can also be auto-sized to API & ISO standards for liquids, gases, steam and two-phase flow systems.

This example involves designing a cooling water distribution system to a bank of heat exchangers where we shall use orifice plates to balance the flow distribution. We shall also use the auto sizing functions to develop the system design and size the pipes, pump and orifice plates.

Problem Statement:

It is desired to provide a balanced cooling water flow to four shell and tube heat exchangers HE1, HE2, HE3 and HE4. The size of the heat exchangers has already been determined from the process requirement and is summarized in table 1.

Table 1

Table 1 Gas Collection

The cooling water is to flow through the heat exchangers and the design system inlet temperature will be 15°C. The design temperature rise of the cooling water across each heat exchanger is 30°C. The elevation of all elements in this model is zero. The design duty pressure rise for this system is also known, 2.5 bar.

Building the model in the FluidFlow flowsheet:

1. Place two known pressure boundary nodes on the flow sheet.

2. Using the steel pipe element, connect the known pressure boundary nodes together as per Figure 1 below.

3. Add the branch pipe connections, ensuring the branch at each tee junction is assigned correctly.

4. Insert the heat exchangers into each branch line.

5. Insert thin orifice plates into the branch pipe connection serving each heat exchanger.

The basic model connectivity should appear as set out in Figure 1.

Figure 1

Auto Sizing Example Model 1

If you wish to check that your data entry is correct, you can load up the example "[FluidFlow3 folder]\Examples\Auto Sizing Example Rev 1.ff3" file.

Each element placed on the flowsheet is provided with default data which the engineer can easily edit based on known design parameters. In this case, we will define the pipe lengths as set out in Table 2. Note, we will accept the default data provided by FluidFlow for the boundary nodes.

Table 2

Table 2 Gas Collection

Select all the heat exchangers at once by holding the SHIFT key and left mouse-clicking on each. All heat exchangers should now be highlighted on the flowsheet. From the Input tab of the Data Palette, set the Heat Loss Model to Fixed Transfer Rate, the heat transfer direction to Into the Network and the Heat Transfer Unit to kW. We have now set all common parameters for the heat exchangers in one step.

The next step is to define the heat load for each heat exchanger (see Table 1).

The design pump pressure rise is 2.5 bar. We can therefore set the centrifugal pump to Automatically Size from the Input Tab on the Data Palette. In doing so, we have two sizing options available: Size for Flow and Size For Pressure Rise. Select Size For Pressure Rise and define the Design Pressure Change as 2.5 bar.

Using the data available for the heat exchangers, we can determine the design mass flow rate from the heat balance (Q = m x c x ΔT). The heat transferred to the cooling water will therefore be:

Heat Transferred (W) = mass flow (kg/s) x specific heat capacity (J/kg) x temperature rise (°C)

The specific heat of water at 30°C is approx 4154 J/kg, so from Table 1 we see that the mass flow needed to HE1 will be 370000 / (4154 x 30) = 2.969 kg/s. Summarizing in Table 3.

Table 3

Table 3 Gas Collection

Since we can auto-size our components, we can define the design flow rate at each orifice plate by setting the Automatically Size option on the Input tab of the Data Palette to On. We now have two sizing models to choose from, Size for Flow and Size for Pressure Loss. As we know the flow rate, select Size for Flow. The next step is to enter the mass flow rates noted in Table 3 for each orifice plate.

The Sizing Model for pipes is Economic Velocity by default. This means that FluidFlow will determine the Exact Economic Size pipe diameter based on the calculated Economic Velocity. This velocity is a function of the fluid physical properties, the pipe materials, various capital and installation costs and the operating hours/year. This value is calculated from the Generaux equation and the calculation uses the values and constants stored in the pipe sizing database. Economic velocity is changing (generally decreasing) with time, particularly as energy costs have increased rapidly in recent times. Flite Software keeps these values up to date, which is one of the many reasons you should keep your software current. Economic velocity is meant to be a guide for pipe sizing; it is NOT a strict criteria for sizing pipes. For example you would not use this value to size pipes where two phase flow is present, or where plant operation is intermittent, or where materials can degrade at high velocities, or for Non-Newtonian flows.

We wish to develop an efficient system design and as such, we are going to retain the Economic Velocity sizing model.

We are now in a position to calculate the model. The solved system should appear as set out in Figure 2.

Figure 2

Auto Sizing Example Model 2

The flow distribution has been shown and if we view the results for any of the four heat exchangers, we can see that the inlet temperature is 15°C and the outlet temperature is 45°C (based on our design 30°C temperature rise).

Note, we also have three warning messages indicating high velocities in the pipelines highlighted in RED.

If you wish to check that your data entry is correct, you can load up the example "[FluidFlow3 folder]\Examples\Auto Sizing Example Rev 2.ff3" file.

A quick check on the results for each of the pipes with a high velocity warning indicates velocities in the range of 4.5 m/s which is considered high. We therefore need to review the pipe diameter. The diameter of each of these pipes is the default value of 2 inch which is 52.5mm. FluidFlow has determined an economic pipe size of approx. 101mm for each of these three pipes. We therefore need to select the next closest standard size match. Lets try a 4 inch schedule 40 pipe.

You can multi-select the three pipes by holding the SHIFT key and left mouse-clicking on each pipe. From the Input tab on the Data Palette, access the pipes database and change the pipe to 4 inch schedule 40 pipe. Press Calculate to refresh the results for the system.

If we view the results for the orifice plates, we can see that FluidFlow has automatically determined the K value and the size of orifice required to provide the desired mass flow rate. The pump duty has also been established for us as 9.95 kg/s @ 2.5 bar (26 m fluid).

The warnings have also been corrected and as such, it can be considered that the system is now a relatively efficient design.

Based on the data entry, FluidFlow has therefore automatically sized the pipework, pump and orifice plates for us, thus simplifying the design process and reducing design time considerably.

If you wish to check that your data entry is correct, you can load up the example "[FluidFlow3 folder]\Examples\Auto Sizing Example Rev 3.ff3" file. The final design should appear as set out in Figure 3.

Figure 3

Auto Sizing Example Model 3

Design Note:

When using the auto size function, it's important not to over constrain the model as this could lead to model convergence difficulties. For instance, in this example, we could have set the sizing model for the pump to Size for Flow. As we had effectively already defined the total flow in the system by defining the flow rate at each orifice plate, we would have duplicated the flow in the system. It is best to avoid duplicating design parameters when developing your model.

Video:

You can view a video of this example on our website. Visit http://www.fluidflowinfo.com/webinars.php and select "FluidFlow3 (v3.31) - New Features".


Designing a Cooling Water System. Part 1

This example will work through the design development of a cooling water distribution system. In doing so, this exercise will demonstrate some of the unique features of the software including the powerful auto-sizing functionality.

The topics covered in this example design are:

§Flowsheet and model building basics.

§How to enter data.

§How to interpret results.

§How to automatically size pipes and components.

Note, FluidFlow allows engineers to auto-size pipes, pumps, orifice plates, control valves and a range of other fittings which simplifies the design process and reduces project design-time considerably.

Outline Project Brief:

It is desired to provide a balanced distribution of cooling water from a cooling tower to serve a total of three shell and tube heat exchangers HE1, HE2 and HE3. The size of the heat exchangers has already been determined from the process requirement and is summarized in Table 1.

Table 1

Cooling Water System Table 1

Design Criteria:

§The cooling water is to flow through the tubes of each exchanger and the maximum inlet summer temperature of the cooling water will be 25°C.

§The design temperature rise of the cooling water across each heat exchanger is 10°C.

§The elevation of the exchangers above the pump centerline is 3 m and the exchangers are approximately 8 M apart.

§Each exchanger has 2 tube passes.

§The elevation of the cooling tower inlet above the pump centerline is 6m and the manufacturer of the cooling tower requires a minimum pressure loss of 30000 Pascals for the flow distribution to work effectively.

As part of the design development, we need to design/specify the following items:

§Pipe sizes to be used.

§The method we will use to balance the flow through each exchanger.

§How to make a pump selection.

§We need to consider what happens to the exit cooling water temperature of HE2 if the heat load is increased by 33%.

Building the model in the FluidFlow flowsheet:

With the design of all systems the initial question we need to answer is where do we start and end the model, i.e., where do we and how do we define the model boundaries. For this design we will start the model at the cooling tower sump and end the model at the top of the cooling tower. This means the actual cooling tower will not be included in this model. Most cooling water systems have a supply header taking fresh cooling water to each individual exchanger and a collection return header. We will therefore use this same approach.

Finally, before we start building the model we need to consider the cooling water flow rate we need to each exchanger branch. The flow to each exchanger is determined by a heat balance equation:

Heat Transferred (W) = Mass flow (kg/s) x Specific Heat Capacity (J/kg) x Temperature Rise (°C).

or simply

Q = m x c x ΔT.

The specific heat of water at 30° C is approximately 4154 J/kg, so from Table 1 we see that the mass flow needed to HE1 will be 200000 / (4154 x 10) = 4.81 kg/s. The required mass flow rate of water to each exchanger is summarized in Table 2 below.

Table 2

Cooling Water System Table 2

We will now start building the model by placing three shell and tube exchangers onto the flowsheet. Select the shell and tube exchanger icon by clicking on the Heat Exchangers Tab on the Component Palette.

Cooling Water Shell and Tube v3.31

Place three shell and tube heat exchangers onto a new flowsheet as shown below:

Cooling Water Flowsheet Build 1

As we drop each element (or component) onto the flowsheet, default data is associated with the element. The default data for each element can be seen in the Data Palette by clicking on the Input Tab. Often we need to change some value(s) in the default data to meet our needs. For now we will continue building and come back later to change each individual element as necessary.

The reason we are deferring this task is that there are many group features built into FluidFlow to aid data editing and setup, which we can use later.

Next we will add the two boundaries.

Inlet Boundary:

For the cooling water inlet boundary we need a boundary that can represent the cooling water sump. We know that the sump is open to atmosphere and that during normal operation the liquid level in the sump is 0.5m above the pump centerline.

If we specify the pressure at any boundary then FluidFlow will calculate the flow that will be delivered to the system. In our design we know the design flow that is needed, because this is determined by the heat load of the exchangers. Later we will make a pump selection that will provide us with the correct flow and design duty pressure rise across the system.

Select the Known Pressure boundary icon by clicking on the Boundaries Tab on the Component Palette. Place the Known Pressure element on the flowsheet anywhere below the three heat exchangers.

Cooling Water Known Pressure Select

Outlet Boundary:

The collection return line eventually leads back to a cooling tower. At this boundary we know the pressure that we must have above in order for the system to work as the cooling tower manufacturer requires a minimum pressure loss of 30000 Pascals. The water pressure necessary at the exit boundary is the sum of the elevation we need to rise to the top of the cooling tower + any pressure required to overcome the loss in the flow distribution system feeding the cooling water tower. The elevation of the cooling tower inlet above the pump centerline is 6m. We will therefore select a Known Pressure element for the exit boundary.

At this point the flowsheet should look something like:

Cooling Water Flowsheet Build 2

To add a pump to the system, we need to select the Centrifugal Pump element found on the Boosters tab and set the Automatically Size function to On. Note, if we set the Automatically Size function to Off and select a pump model from the database, this will represent a specific pump and the flow we obtain in the system will be that dictated by the intersection of the pump and system curves. Chances are that the default pump selection will be incorrect. We will therefore defer the selection of the actual pump model until we have sized the pipes and fittings.

As we have set the Automatically Size function to On for the centrifugal pump, this allows us to choose from two sizing options: 1) Size for Flow or 2) Size for Pressure Rise. If we select Size for Flow, FluidFlow will calculate the head required to deliver our design flow rate and if we select Size for Pressure Rise, FluidFlow will calculate the flow rate throughout the system as a result of the design pressure rise requirement.

We therefore need to consider which option is most applicable for our design case. As a first pass design, we can select Size for Flow and define the design flow rate of 12.99 kg/s for the system. This will enable us to size the pipework, study the flow distribution and determine the pump duty pressure rise.

Cooling Water Select Auto Pump 1

Place the centrifugal pump on the flowsheet to the right of node 4 (the node Known Pressure node which represents the cooling tower sump).

Cooling Water Connect Pipes 1

We are now ready to start connecting pipes. FluidFlow makes pipe connecting very easy, because there is no need to include bends. These are added for you as you draw the pipes. We will again defer the task of editing data values as we connect pipes. Right now we are only concerned with building the model connectivity.

Click the Steel Pipe icon on the Pipes tab of the Component Palette.

Cooling Water Steel Pipe Select 1

As you move the cursor over the flowsheet the shape changes to a pipe icon Cooling Water Pipe Cursor. Click on the known pressure boundary and then move the mouse to be directly over the pump element, then click the left mouse button.

FluidFlow will then complete the pipe connection from the cooling water sump to the pump. While the cursor is over the pump make a second left mouse click and then move the mouse cursor to the right beneath heat exchanger 3 and make another left mouse click. A pipe is created starting at the pump and terminating at an open end. Click on the open end and position the cursor directly over the heat exchanger as shown below.

Cooling Water Connect Pipes 2

Click on the exchanger, to complete the connection from the open end to the far right heat exchanger. Notice that the open pipe will change to a bend automatically.

If you make a mistake, click on the selector icon, in the flowsheet toolbar, select the wrongly connected element and use the Ctrl + Delete keys together to delete the selected element. Alternatively, right mouse-click and select "Delete" from the drop-down menu.

Selector Icon.

Your flowsheet should now appear as shown below.

Cooling Water Connect Pipes 3

Move the cursor over the pipe on the discharge side of the pump on the same grid position as heat exchanger 2. Notice how the cursor changes from a pipe to a split pipe as we move over a pipe that can be split. If we click here the pipe will be split and we can make the connection to the middle heat exchanger.

The split pipe has converted itself into a Tee connection. This type of junction, because it is made dynamically, adjusts itself depending on the number of pipes connected. For example a single pipe connected and the junction is an open ended pipe, two connected pipes and the junction transforms to a bend, three connected pipes the junction becomes a tee or wye and with four connected pipes the junction becomes a cross.

Make further connections so that we end up with a connected network as shown on the following image.

Cooling Water Connect Pipes 4 v3.32

Turn on the pipe numbering from the flowsheet toolbar. Note that pipe numbers go from -1 ... -n and that other elements (nodes and text) are numbered 1 ... n.

Changing the default data using the flowsheet and data palette:

Up until this point no data entry has been made, we have focused on describing the element connectivity. This means that each element will have default data values according to the current environment set in use when the element was placed on the flowsheet (see Customizations and Environment section for more information about environment sets).

You can select any element on the flowsheet at any time by clicking on the element, after first using (clicking on) the selector icon. First we need to enter all the pipe lengths. Table 3 shows the pipe lengths that are fixed by the physical plant layout and also the number of bends in each pipe section.

Table 3

Cooling Water System Table 3

To enter the pipe lengths we can use one of two approaches. Either we can select pipes from the flowsheet or we can select pipes from the Lists Tab in the Data Palette. We will use the flowsheet in this example.

We can reduce the amount of data entry we make by recognizing the fact that some of the pipes are identical. For example the main feed and return branches to each exchanger are identical (pipes -3, -5, -7, -8, -11 and -13). If we use the fact that we can make multiple selections on the flowsheet we can change the length of all 6 pipes with one edit.

There are many ways to make multiple element selections, but for now we will use the mouse-click method. To make multiple selections using mouse clicks on the flowsheet simply hold down the Shift key and click each element you wish to select. If you make a mistake and select the wrong element just click the element again and it will deselect. Don't forget to keep the Shift key depressed as you are making the multiple selections. Use this method to select the six identical branch pipes. If you release the Shift key and click anywhere on the flowsheet other than on a selected element you will lose your selections.

Cooling Water Connect Pipes 5 v3.32

To enter the pipe length of 3 m for each selected pipe, click on the Input tab in the Data Palette, move to the Length row in the Input tab and change the length to 3.

Cooling Water Multiselect Branch Pipe Edit Change

Input Inspector Tab.

The length of all 6 pipes is changed in one edit. Change the length of the remaining pipes, (Hint: the header and return sections -4, -6, -10 and -12 are identical).

Time to save our work. Use the File Save menu to save your work now. It is good practice to regularly save your work.

To complete the pipe data entry we need to make 2 additional entries. For each pipe we need to specify a nominal size and we need to add further bends as shown in Table 3. We need to determine pipe size and FluidFlow can help us here, so we will defer this task and add the additional bends now.

There are 2 additional bends in each branch line, 3 in the supply line from the pump to the first branch (tee node 9) and 5 additional bends in the return line from the last return branch (tee node 12) to the cooling tower.

As we are dealing with an incompressible fluid, where the density change is small throughout the network we can avoid entering all bends individually. Instead use the Quantity row for each bend we add in the Input Inspector to reduce the number of bends we need to add.

Design Note: This approach is NOT recommended where density changes throughout a pipe section are significant, i.e. compressible fluids.

Select the Junctions Tab in the component palette and click on the bend, then drop this bend into the pipe. If you need to create some additional length to pipe -1 on the flowsheet, click on the pump node (6), hold down the left mouse button and drag the node to a different location.

Add the remaining bends as shown highlighted in the flowsheet below.

Cooling Water Connect Pipes & Orifice Plates 5 v3.32

Hold the Shift key and click on bends 14, 15, 16, 17, 18 & 19 and change the Quantity row in the Input Inspector of the Data Palette from 1 to 2.

Click on bend 13 and change the quantity to 3. Click on bend 20 and change the quantity to 5. This almost completes the data entry for the pipe data given in Table 3. All that remains for pipe entry is to set each pipe diameter.

You may have noticed that inserting an element in a pipe splits the pipe lengths into two equal segment lengths. This is the default behavior but can be changed based on personal preferences if desired. This can be achieved by selecting: Options | Environment | Component Defaults [F4].

Note, it is important to review all pipe lengths which have been affected as a result of inserting elements. In this case, we have set the length of the pipes in this system to reflect that shown in Table 4.

Table 4

Cooling Water System Table 1A

Click on each heat exchanger on the flowsheet and change the default data to reflect the tube information provided in Table 1. The Input Inspector for HE2 is shown below.

Input Editor 0

You have probably realised that the number and content of the rows displayed in the Input Inspector is governed by the choices you make. For example changing the Heat Loss Model From Ignore to Fixed Transfer Rate means that you need to supply additional data and so the additional rows Heat Transfer Direction, Heat Transferred and Heat Transfer Unit appear. Heat Transfer Direction Into the network means that the exchangers are acting as coolers i.e. the process side is generating heat.

Two more entries in the Inspector and we are ready to make our first calculation. At the input boundary (node 4) we need to set the pressure, boundary temperature and ensure that the fluid is water. The Input Inspector should look like. (25°C inlet temperature and a pressure of 1 atm).

Input Editor 1

In the known pressure outlet boundary (5), we need to set the pressure to 1 atm + 30000 Pascals (1.3 ATM). This is the pressure required to overcome losses in the cooling tower flow distributor. We can leave the temperature and fluid at the default entries since the flow will be out at this boundary and therefore the temperature, flow and fluid will be determined by the calculation.

Input Editor 2

At the pump (node 6) we need to enter the design flow rate of 12.99 kg/s. The orientation of the pump should be set so that the red dot, which represents the pump discharge, points to pipe -2. If you need to change this click on the Discharge Pipe (RED) row in the Input Editor.

Input Editor 3

Before we make the first calculation you should also check that elevations are correct for each element. In fluid flow calculations the relative elevations are important, which means that we need to select a datum or grade point. i.e. a point where all elevations are measured relative to. Normally we would select the ground to represent a 0 elevation. In this example we will take the pump centerline as representing 0 elevation. Check that your node elevations are:

Table 5

Cooling Water System Table 4

To complete the data input make sure that all pipe lengths are set to the values in Table 4. At this stage we can leave the pipe diameters at the default values because our next task is to size all of the pipes.

Press the Calculate button. You should see FluidFlow quickly solve the network and flow directional arrows appear on the pipes in the flowsheet.

You can view the results in many ways. The simplest is to select the Results Tab in the Data Palette and click on each heat exchanger in turn on the flowsheet. In the results table the only row we are interested in at this stage is the mass flow through each exchanger. If we click on each exchanger in turn we can see that the flows do not match what we need from a cooling viewpoint. This means that the cooling system is unbalanced and will not work as specified in the initial design definition. You should be able to see that the flow through HE1 is greater than design and the flow through HE2 and HE3 is too low.

There is a useful way to view these results. Since we will be constantly referring to these flows we can show them on the flowsheet. To do this click on the 3 exchangers, while holding down the shift key to make a multi-selection then in the Input Inspector, change the Properties on Flowsheet row from Hide to Show, set the Alignment to Left and press the Properties button to obtain the following dialog.

Properties on flowsheet

Check the Flow in the Results tree and press the OK button. The flow rate through each heat exchanger will now be displayed on the flowsheet. If you need to change the flow units, you can either right mouse-click on the results tab, select Result Units [F9] and choose the desired flow units, in this case kg/s.

Pipe Sizing:

Before we balance the network we need to set the pipe sizes. There are three different options available in FluidFlow for sizing pipes: 1) Economic Velocity, 2) By Velocity & 3) By Pressure Gradient. This example will focus on using option 1: Economic Velocity.

Economic Velocity:

By selecting this option, we are allowing the software to determine the exact pipe size corresponding to the calculated economic velocity (shown in the Result). The economic velocity is a function of the fluid physical properties, the pipe materials, various capital and installation costs and the operating hours/year.

In FluidFlow each time the pressure loss through a pipe is calculated, its economic velocity and hence the economic pipe size are also calculated. By default these values are shown in the results table. Select the Results Tab in the Data Palette and click on the branch pipes in the flowsheet. As we move from each branch pipe we can see that the Exact Economic Size row in the results table ranges from 83, 63 & 54mm. This means that we should select the nearest standard pipe size to the suggested economic sizes calculated for each branch pipe. Since the default pipe size is 2", (unless this has been changed or you are using a different environment) we may not need to make any size changes to the branch pipes as this represents a size of 52.5 mm which is already reasonably close to the suggested Exact Economic Size for the branches. Perhaps a good starting point is to focus on the economic velocities and sizes for the main headers.

Check the supply or return header pipework and we can see that the exact economic size needed ranges from 124 mm to 58 mm. The calculated results for pipe node -2 are shown below. As we can see, the Size of the pipe is shown as 52.5 mm (default 2" size), the economic velocity is calculated as 1.23 m/s and the associated Exact Economic Size 115.9 mm.

Economic Pipe Size v3.4

There is therefore a case for reducing the header size after each take off. This may reduce costs since we can utilize reducing Tees.

We will use the economic size suggestions to change the pipe sizes in the following manner.

Set the pipe size in the supply header to the first branch (tee node 9) and in the return header from the last branch (tee node 12) to be 4" Schedule 40 (Pipes -1, -2, -14, -21 and -9). Set the pipe in each header between the first and second branches to be 3" Schedule 40. At this stage, we will not make adjustments to the rest of the header as it is already 2" by default which in some cases, is already near the suggested economic sizes. If we need to, we can revisit this later if we still have high velocities in our lines.

Recalculate and save your work at this point. The model should now appear as shown below.

Note, you can rotate the junctions to enhance the presentation of the model by multi-selecting the relevant common nodes and selecting CTRL + R (Edit | Rotate Node).

Cooling Water Connect Pipes Pre Orifice v3.4

You may notice that you now have warning messages at four of the tee junctions. FluidFlow calculates correctly for reducing Tees, provided that you are using Idelchik, Miller or SAE types (this is the default). The tees at nodes 9 and 12 have connecting pipe sizes 4, 3 and 2" and pressure conversion effects from velocity to static or vice versa are taken into account when calculating pressure losses at the tee. Click on the tee, select the Input Tab and click the Nomenclature row in the Input Inspector if you need further information. For tees having 3 different branch sizes the loss relationships need to be extrapolated and you may find that you have warning messages to this effect.

Warning messages are there to help you decide if you need to make design changes. In this case the warning messages refer to the possible loss of calculation accuracy in the tee junctions because relationship data has been extrapolated. Since there are no other available pressure loss relationships available for these types of reducing tees we have no choice but to accept this warning. Still it is worthwhile checking on the calculated K values to ensure these are within an expected range (-2 to 10). You can also cross-check by using another loss relationship (say Miller type) and verify that the calculated K values and pressure losses are similar. This is the case here and so we can safely ignore the warnings. In fact we can turn off some of the less severe warnings, but this is not recommended.

Often, as engineers we like to keep header and return line sizes equal along the header and so a 4" or even 3" header/return line size is also a valid solution. Remember to take into account all possible operating scenarios and future considerations before making your final design decisions. For example, if we knew there was a possibility of a 4th heat exchanger being added at some time in the future then it would be a better solution to make the header and supply lines all 4". Pipe line sizing is always a balance between capital costs, operating costs and operating flexibility.

Pump suction lines should always be given careful consideration. We must always ensure that we have an entry head at the pump suction above the net positive suction head required by the pump + a safety margin. FluidFlow will detect and warn if adverse conditions exist and as a first guess we will use a 4" pipe.

Based on the changes made so far, the calculated results for the pump are as shown below.

Cooling Water Pump 6 v3.4 Result

Balancing the network:

We need to add additional elements in order to balance the network. In this design case, we are going to automatically size orifice plates to achieve the required design flow rate of water in each branch. Using orifice plates will allow you to drop pressure in a controlled manner in each branch so that the correct flow distribution is achieved. However, it is important to note that balancing is wasteful of energy and perhaps, an alternative design solution may be more applicable to your specific design case. In any event, using orifice plates will help us achieve our flow distribution goal.

To obtain the distribution required we will use 3 orifice plates, one in each branch. Using orifice plates is a cheap solution to the distribution issue. However it may not prove very flexible if process conditions are likely to change. In this case using throttling valves may be a better solution.

Add the orifice plates as shown in the flowsheet below, set the Elevation of each orifice to be 3.75 m, set the Automatically Size function to ON and set the Sizing Model to Size for Flow. We must now enter the design flow rate for each orifice plate as calculated in Table 2. By defining the flow rate at each orifice plate, we are by default entering the total mass flow rate for the system. In the first pass calculation, we had already defined the total mass flow rate at the pump (12.99 kg/s). This will therefore lead to duplication in flow rates and as such, we need to change the pump Sizing Model to Size for Pressure Rise.

The design pressure rise from the pump can be established from adding the system pressure loss (calculated from pass 1 to be 117938.1 Pa) to the static head requirement which can be established from the equation P = ρ x g x H (P = 997 * 9.80665 * 6 = 58663 Pa). The design pressure rise therefore becomes 176601.1 Pa. We can now enter this design value for the pump on the Input Inspector of the Data Palette.

Recalculate the model to refresh the results. We can now see a different flow distribution.

Adding Orifice Plates v3.4

We can also see that FluidFlow has automatically determined the size of orifice plate required in order to achieve the design flow rate through each branch. If we view the results for the pump, we can see a design requirement of 12.99 kg/s @ 18.1 m fluid with a NPSHa of 10.4 fluid.

We have now almost completed the design. We will look at how to make final equipment specifications and how to consider the effect of likely operating scenarios in Part 2.

Summarizing you should have learned the following skills:

ØHow to select components from the component palette and how to place and move them on the flowsheet.

ØHow to connect pipes between nodes.

ØHow the Input Inspector works.

ØHow to make data changes to the flowsheet elements, both individually and as a selected group.

ØHow to show result text on the flowsheet

ØHow to interpret the calculated results to select or optimize a pipe size.

ØHow to balance a fluid network using orifice plates.


Designing a Cooling Water System. Part 2

This is the concluding part to the design of a cooling water system, started in Part 1.

In this part we will select a specific manufacturer's pump to perform at the operating duty calculated from the centrifugal pump element and consider the effect on the system if the heat load on exchanger 2 (HE2) is increased by 33%.

Click on the centrifugal pump element on the flowsheet and the results tab on the data palette. If you are using the default "System International" environment you should see a result similar to:

AutoPumpResults v3.32 OR AutoPumpResults v3.32 II

That is, the design flow of 12.99 kg/s of water at 25° C needs a pressure rise of 176601 Pa in order to operate at the design flows. We may wish to stop here and ask our preferred pump manufacturer to suggest a pump to supply this duty. To do this we will need to convert the pump duty flow to a suitable volumetric unit and the calculated pressure rise needed to head units. You can use FluidFlow to do this for you automatically, however you may find it instructional to do the conversion now to m3/h and m Fluid. The density of water, obtained from the results table is 997 kg/m3 and so the calculated volumetric flow will be 12.99 x 3600/997 = 46.9 m3/h. The head that the pump is required to produce will be 176601/(997 x 9.80665) = 18.1 m Fluid.

This information, together with the operating fluid and temperature conditions is enough for the pump manufacturer to make a selection and under normal circumstances this is all that is required.

It is better to allow the manufacturer to make the selection for the following reasons: pump selection is often more than a simple hydraulic selection. Pump configuration, sealing and shaft load considerations, materials of construction, etc., are best handled by the manufacturer.

Even though the manufacturer is in a better position to make the selection it is still worthwhile and you can often get a more flexible design by making some additional hydraulic considerations.

For the purpose of illustration we will use the inbuilt pump selector to make the selection at this duty point. From the menu select 'Tools | Equipment Performance Viewers | Pump Performance' to create the dialog shown below.

Pump Selector v3.32

To use this tool change the Design Flow to be 46.9 m3/h, and as you click on each pump in the list the performance data (Head, Efficiency, Best Efficiency and NPSH required) are shown for the currently highlighted pump.

This means that you can move through each pump in the database and view how it will perform in this system. The pump shown above would be a suitable selection from NPSH and efficiency viewpoint, but is unsuitable because the head developed is greater than that required by our duty (18.1 m fluid).

Viewing the pump database provides a number of pumps that will fulfill the hydraulic and system needs. You may wish to consider some of the following models:

Girdelstone 32ns.

DNP85-165.

FA 253-4402Z.

NM3196 2x3-10.

The best choice is to select a pump operating near the best efficiency or a pump with the highest efficiency at the duty point.

To complete the example we will select the Gould pump NM 3196 2x3-10 MTX. The operating performance of this pump based on a design flow rate of 46.9 m3/h is as shown below.

Pump Manually Selector v3.32

To assign this pump to the model, click on the centrifugal pump node (6) and set "Automatically Size" to "Off". Change the pump model from the default pump, by clicking on the button in the Pump Model row in the Input Editor and select the Gould NM 3196 2x3-10 MTX.

Select Pump Manually v3.31

Notice that the pressure developed by this pump is higher than that needed and that the orifice size on each branch has changed slightly in order to maintain the design flow rates specified.

Pump Inserted v3.4

As engineers we like to over design. Right !!!. Before we congratulate ourselves on the design, we may wish to check that the selected pump is operating near to the Best efficiency point (BEP) and that the duty point is not near the pump run-out condition. If we are operating in the latter region, it would be wasteful of energy, have a larger NPSH requirement, increase pump wear and we would most likely need to oversize the motor.

This particular pump is operating in a reasonably good position. However, there may be an opportunity to reduce the pump power requirement and thus, improve the system operating efficiency. It is important however to give due consideration to the system design pressure requirements, in particular, the design pressure losses advised by the cooling tower manufacturer.

Let's consider the current set of results for the pump.

Pump Duty Pre Optimisation v3.4

If we wished to study energy saving measures, we could select a smaller pump, or better still we can reduce the impeller diameter from 254 mm to around 224 mm. This will allow us some additional capacity if needed in the future.

Lets apply this change to the impeller diameter from the Input tab. of the Data Palette. When we recalculate the model, we can see that the affinity laws have been applied and the power requirement has reduced from 4.03 to 2.97 kW. We will also note however that the duty pressure rise has also reduced from 188296.5 to 133284.2 Pa. You may therefore wish to review this operating condition with the cooling tower manufacturer. Details of the results of this simulation are shown below.

Pump Duty Post Optimisation v3.4

Note, by reducing the pump impeller diameter, the pressure drop across the system reduces and the orifice plate diameters increase to maintain the desired flow rate which is reflected in the updated flowsheet as shown below.

Pump Inserted & Impeller Optimised v3.4

WARNING:

You should note that reducing the impeller diameter or changing the speed will produce a flexible design, but in this example, you can see from the adjusted pump chart that we are still operating away from the best efficiency point and so this may not be the best solution.

Finally we need to consider increasing the heat load to HE2 by 33%. Change the heat transferred to be 226,100 Watt, then recalculate. The temperature at the exit of the heat exchanger rises from 34.9°C to 38.2°C. The temperature to the cooling tower increases from 34.9 to 36 °C.

This increase in temperature is considered to be acceptable and we do not need to rebalance the system.


Designing a Gas Collection System

In this example we are not concerned with building the model and data entry. Instead we focus on the engineering.

Problem Statement:

It is desired to collect together the air vents from a group of 5 storage tanks holding a flammable, obnoxious liquid. The vent gas is to be treated in an activated carbon bed before finally passing to atmosphere.

In this problem we are only concerned with the situation that occurs as the tanks are filling. In our scenario each tank vents gas (for simplicity considered to be air), at the rate of which it can be filled. The exit gas vent from each tank is modeled as a known flow element, with the maximum tank fill rates already entered.

The remainder of the collection network has been built and can be opened from "[FluidFlow3 folder]\Examples\Non Sized Gas Collection System.ff3". Open the example and consider how we may answer the following question.

1. Size all pipes so that the operating pressure under maximum filling rates does not exceed that allowed under code API 650. This means no more than 1 psig operating pressure in each storage tank.

Considerations and approach:

We will take the worst case of all 5 tanks filling at one time.

To easily view the calculation result values we can use one of three possible techniques:

§We can configure and turn on the fly by results. In this way we can move the mouse over the flowsheet and look at the result values we are interested in.

§We can click the Results tab in the data palette on the left click on the flowsheet to select each component we are interested in.

§We can show the results on the flowsheet.

It is important to state at the outset that there are many solutions to this problem. For example we could increase all line sizes until the pressure in each tank dropped below 1 psig. This would undoubtedly work, but as the lines are made of stainless steel and are of a reasonable length we may not wish to over design in this way due to cost considerations.

Gas Collection System. Part 1 v3.4

To start, let us consider the tank pressures if we use 2" pipe throughout (this is the case if we open the example). You can see that each tank is over the maximum allowed pressure of 1 psig.

Click on any pipe and look at the results table in the data palette. You can see immediately that each pipe is already larger than the size recommended according to the economic size. This is an important point and illustrates that you cannot blindly set all pipe sizes to the suggested economic size in all cases.

Click on a few more components and consider the row titled "Non Recoverable Loss", this loss represents the pressure loss that can never be recovered. It is this value that we must impact (reduce) if we are to design a safe system.

You should quickly note that the majority of the system pressure loss occurs at the packed bed. The packed bed represents a pressure loss of 0.6 psi out of a total of < 1psi available.

Using this knowledge, perhaps the best approach to take is to increase the diameter of the bed to reduce the pressure loss, rather than increase the pipe size of each pipe. This now becomes a cost issue. For example is it less expensive to change the diameter of the bed, or use a different particle size in the bed rather than change the pipe sizes.

We do not have sufficient information to fully consider the available choices. What is important is that you recognise how to utilize the power of FluidFlow to consider the alternative design scenarios.

If you have the scripting module you can automate this process.

An acceptable design changing only pipe sizes downstream of the Tee junction (node 15) is saved as "Pipe Sized Gas Collection System".In this example we are not concerned with building the model and data entry. Instead we focus on the engineering.

Problem Statement:

It is desired to collect together the air vents from a group of 5 storage tanks holding a flammable, obnoxious liquid. The vent gas is to be treated in an activated carbon bed before finally passing to atmosphere.

In this problem we are only concerned with the situation that occurs as the tanks are filling. In our scenario each tank vents gas (for simplicity considered to be air), at the rate of which it can be filled. The exit gas vent from each tank is modeled as a known flow element, with the maximum tank fill rates already entered.

The remainder of the collection network has been built and can be opened from "[FluidFlow3 folder]\Examples\Non Sized Gas Collection System.ff3". Open the example and consider how we may answer the following question.

1. Size all pipes so that the operating pressure under maximum filling rates does not exceed that allowed under code API 650. This means no more than 1 psig operating pressure in each storage tank.

Considerations and approach:

We will take the worst case of all 5 tanks filling at one time.

To easily view the calculation result values we can use one of three possible techniques:

§We can configure and turn on the fly by results. In this way we can move the mouse over the flowsheet and look at the result values we are interested in.

§We can click the Results tab in the data palette on the left click on the flowsheet to select each component we are interested in.

§We can show the results on the flowsheet.

It is important to state at the outset that there are many solutions to this problem. For example we could increase all line sizes until the pressure in each tank dropped below 1 psig. This would undoubtedly work, but as the lines are made of stainless steel and are of a reasonable length we may not wish to over design in this way due to cost considerations.

Gas Collection System. Part 1

To start, let us consider the tank pressures if we use 2" pipe throughout (this is the case if we open the example). You can see that each tank is over the maximum allowed pressure of 1 psig.

Click on any pipe and look at the results table in the data palette. You can see immediately that each pipe is already larger than the size recommended according to the economic size. This is an important point and illustrates that you cannot blindly set all pipe sizes to the suggested economic size in all cases.

Click on a few more components and consider the row titled "Non Recoverable Loss", this loss represents the pressure loss that can never be recovered. It is this value that we must impact (reduce) if we are to design a safe system.

You should quickly note that the majority of the system pressure loss occurs at the packed bed. The packed bed represents a pressure loss of 0.6 psi out of a total of < 1psi available.

Using this knowledge, perhaps the best approach to take is to increase the diameter of the bed to reduce the pressure loss, rather than increase the pipe size of each pipe. This now becomes a cost issue. For example is it less expensive to change the diameter of the bed, or use a different particle size in the bed rather than change the pipe sizes.

We do not have sufficient information to fully consider the available choices. What is important is that you recognise how to utilize the power of FluidFlow to consider the alternative design scenarios.

If you have the scripting module you can automate this process.

An acceptable design changing only pipe sizes downstream of the Tee junction (node 15) is saved as "Pipe Sized Gas Collection System".

In this example we are not concerned with building the model and data entry. Instead we focus on the engineering.

Problem Statement:

It is desired to collect together the air vents from a group of 5 storage tanks holding a flammable, obnoxious liquid. The vent gas is to be treated in an activated carbon bed before finally passing to atmosphere.

In this problem we are only concerned with the situation that occurs as the tanks are filling. In our scenario each tank vents gas (for simplicity considered to be air), at the rate of which it can be filled. The exit gas vent from each tank is modeled as a known flow element, with the maximum tank fill rates already entered.

The remainder of the collection network has been built and can be opened from "[FluidFlow3 folder]\Examples\Non Sized Gas Collection System.ff3". Open the example and consider how we may answer the following question.

1. Size all pipes so that the operating pressure under maximum filling rates does not exceed that allowed under code API 650. This means no more than 1 psig operating pressure in each storage tank.

Considerations and approach:

We will take the worst case of all 5 tanks filling at one time.

To easily view the calculation result values we can use one of three possible techniques:

§We can configure and turn on the fly by results. In this way we can move the mouse over the flowsheet and look at the result values we are interested in.

§We can click the Results tab in the data palette on the left click on the flowsheet to select each component we are interested in.

§We can show the results on the flowsheet.

It is important to state at the outset that there are many solutions to this problem. For example we could increase all line sizes until the pressure in each tank dropped below 1 psig. This would undoubtedly work, but as the lines are made of stainless steel and are of a reasonable length we may not wish to over design in this way due to cost considerations.

Gas Collection System. Part 1 v3.36

To start, let us consider the tank pressures if we use 2" pipe throughout (this is the case if we open the example). You can see that each tank is over the maximum allowed pressure of 1 psig.

Click on any pipe and look at the results table in the data palette. You can see immediately that each pipe is already larger than the size recommended according to the economic size. This is an important point and illustrates that you cannot blindly set all pipe sizes to the suggested economic size in all cases.

Click on a few more components and consider the row titled "Non Recoverable Loss", this loss represents the pressure loss that can never be recovered. It is this value that we must impact (reduce) if we are to design a safe system.

You should quickly note that the majority of the system pressure loss occurs at the packed bed. The packed bed represents a pressure loss of 0.6 psi out of a total of < 1 psi available.

Using this knowledge, perhaps the best approach to take is to increase the diameter of the bed to reduce the pressure loss, rather than increase the pipe size of each pipe. This now becomes a cost issue. For example is it less expensive to change the diameter of the bed, or use a different particle size in the bed rather than change the pipe sizes.

We do not have sufficient information to fully consider the available choices. What is important is that you recognize how to utilize the power of FluidFlow to consider the alternative design scenarios.

If you have the scripting module you can automate this process.

An acceptable design changing only pipe sizes downstream of the Tee junction (node 15) is saved as "Pipe Sized Gas Collection System".


Hints & Tips

This section will provide some useful modelling tips which will help the user interpret any calculation warnings/errors and develop models efficiently. It will also include a step-by-step guide detailing how to define new components in the Component Database.


Modelling Tips

When developing a model, it is recommended that the user adopts the following approach:

1.Build the model in sections using a step-by-step approach. It is prudent to develop the model in sections, testing each section as you build the model as this will help eliminate any fundamental errors. If each section converges successfully, the final model should also converge without any difficulty. If one of your smaller sub-models will not converge, it is unlikely your final model will converge.

2.Keep the flowsheet as simple as possible.

3.Keep connector pipes as short as possible. The more compact the model the easier to navigate.

4.Use multiple components wherever possible. For instance a pipe containing several elbows may be simplified by setting the "Quantity" of the elbow element to represent more than one elbow. You may use this approach for liquid systems, however, it is recommended that this approach is not used when modelling gas systems due to the changes in gas density which has a knock on effect on calculated pressure loss, thus affecting accuracy.

5.When creating a new model, always ensure the base calculation settings are correct and have not been changed by another user for a specific modelling application. It is also prudent to check the Warnings & Hints settings to ensure it matches your design criteria.

6.When developing a model which has tees with three different diameter pipe connections, there is no need to add a reducer to each connection as the software will automatically detect this scenario and include it in the calculations.

Note, users have the option of adjusting calculation convergence criteria. However, unless you have a valid reason for doing so it is not recommended that these settings be adjusted.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Model Troubleshooting

Navigation: Hints & Tips >

Return to chapter overview

Hints & Tips

The reasons for non-convergence of a model are many though are most often due to data-entry issues. The items discussed under "Modelling Tips" are crucial in avoiding any fundamental model convergence issues. However, if a model solves with calculation warnings, the following can be investigated as a means of reaching an acceptable design solution.


Pipes

High & Low Velocity Warning: High & low velocity warnings are enunciated based on the Min. and Max. limits set under Options | Warnings & Hints (see Figure 1 below). If the calculated pipeline velocity exceeds these set limits, a warning will be enunciated to that effect. It is recommended that the default settings are retained however, you can change these design limits to reflect specific system design parameters. Note, there are different velocity limits for different fluid phase states, i.e., liquid, gas and two-phase. You can view the settings by selecting the appropriate tab at the top of the "Warnings & Hints" form (Figure 1).

Warnings&Hints - LiquidLimits

Figure 1: Liquid Limits.

Closed Pipe: This warning can arise when an accumulator/vessel node has been used as the model inlet and the branch connection has been defined above the liquid level of the vessel. Since the liquid cannot flow out of the vessel, the software will enunciate a "Closed Pipe" warning.

A "Closed Pipe" warning can also arise when the Status of a pipe (or component) in a large model has been set to "Off or Closed", resulting in flow being isolated from a number of downstream pipes. The software will therefore automatically close the affected pipes downstream of the node set to "Off or Closed". If you wish to isolate a specific section of a model, it is good modelling practice to highlight all nodes within the relevant part of the model and set the Status of all nodes to "Off or Closed". This will also assist model convergence.

Static Pressure below fluid vapor pressure or negative: This message is often indicative of a data-entry issue and every step should be taken to correct this issue in order to obtain more accurate results.

This warning can occur for a number of reasons as follows:

1.

When a data-entry error/omission has occurred when entering node elevations. If we have a scenario where two nodes at different elevations are connected by a single pipe which is of insufficient length, this warning will be enunciated along with Pipe Length < Elevation Difference warnings.

The recommended approach is to correct the pipe length/node elevation data-entry and recalculate the model. You will notice that the Pipe Length < Elevation Difference warnings will now be eliminated and the "Static Pressure below fluid vapor pressure or negative" may also be eliminated unless there are other issues with the model. If the latter warning remains, please refer to the items outlined below.

2.

When modelling piping flow systems, the continuity of energy must be upheld. As such, if the fluid velocity and associated velocity pressure (kinetic energy) in a pipeline or element has increased considerably, the static pressure may solve to a negative value. When this scenario arises, FluidFlow displays the warning: "Static Pressure below fluid vapor pressure or negative".

This scenario is often encountered in gas systems.

You may need to review the system design conditions (pipe diameters, design pressures and flow rates) in order to eliminate this warning message.

3.

This warning can also occur in liquid systems where the user is attempting to develop too great a flow rate in a given system. It is recommended that the design flow rate is reduced to a level which allows the model to converge and reach an acceptable design solution.

4.

This warning can occasionally be enunciated in large-scale systems which have been developed exclusively with Known Pressure nodes. When we model a system using this approach, the software will automatically determine the flow rates throughout the system. If however the design flow rate is known at any given inlet or outlet boundary in the system, try switching one Known Pressure node to a Known Flow node, enter the relevant design flow rate and recalculate to refresh the results. The system pressures and flow rates will automatically be calculated, providing more accurate results and the warning may be eliminated.

Note, this methodology is more applicable to larger systems.

5.

This warning may also be enunciated in a system if we have an operating scenario where a pipeline is not running full-bore with fluid, i.e., in vertical downstream lines with little or no back pressure and the fluid runs down the side walls of the pipe with vapor being sucked inwards to the pipe centerline (column separation). This tends to occur in systems with extreme differences in elevation or where there is discontinuity in the system elevations (see note 1 above).

A starting point is to check the node elevations and pipe lengths and recalculate the model once any corrections have been made. If the warning remains, try adding an orifice plate to the end of the vertical pipeline in question, adjusting the orifice size until such times as we develop enough back pressure and the warning is eliminated.

6.

Finally, this condition can also arise if we have defined pipes with a length of zero (0 M).

7.

This warning may occur if you have modeled a PD pump in series with a Known Flow node. By using these two nodes in series we are over constraining the model. The calculated flow rate developed by the PD pump is a function of engineering conditions (pipe diameter, length, etc.) and pump speed and cannot be manipulated by designating a Known Flow node. It is therefore best to model this scenario with known pressure nodes at the system boundaries and adjust the pump speed to reach the desired flow rate in the pipelines.

Care should be taken to eliminate this warning in order to obtain accurate and meaningful results.

Flow Regime is in the critical Region: This warning message arises if the flow in the pipe is between the laminar and turbulent region, i.e., the flow is in the unstable/transition or critical region.

Incorrect use of Shell-MIT: This warning message arises if the "Friction Model" for the pipe has been set to Shell-MIT. The reason for this is that this pressure loss relationship is specific for heavy crude oil and heated liquid pipelines and should not be applied to any other flowing conditions. If you are modelling a different fluid type, it is recommended that the "Friction Model" for the pipe is set to "Moody".

Incorrect use of FIXED friction factor model: This warning message arises if the "Friction Model" for the pipe has been set to "Fixed Friction Factor (Darcy)". In general, it is not a recommended modelling approach as the friction factor in most cases needs to be calculated. However, if you have a scenario where the friction factor is known based on plant measurements or has been back-calculated, you can use this option and directly define the known value for friction factor.

Pressure/Head Units: You can change the pressure/head result units by selecting F9. Note, results can be shown in pressure units (Pa, kPa, etc) or head units such as "m fluid", "m water", "in water", "in fluid", "ft fluid" etc. If you are modeling a system and you have a pressure loss result for example of 70.91 m fluid, the conversion to "m water" is based on the fluid density. So, if the modeled fluid density is 1303 kg/m3 and for simplicity assuming a water density of 1000 kg/m3, the conversion ratio is 1303 kg/m3/1000 kg/m3 = 1.303. Therefore, the result for the modeled fluid in "m water" would be 70.91 * 1.303 = 92.39 m water.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Centrifugal Pumps

Booster Affinity Law Corrected: Arises when design input for pump speed or impeller diameter has been changed. FluidFlow allows users to model the effect of changes in pump speed and impeller diameter in a given piping system (provided you have defined a Min. and Max. speed and impeller size in the database). If we model this scenario, the pump performance data is adjusted according to the affinity laws.

It is important to note that the affinity laws only hold accuracy over a range of maybe +/- 20% to the original curve parameters. The software will enunciate a warning when pump speed or impeller size has been changed to make the engineer aware of this operating condition. It is then down to engineering judgment to accept that you are operating close enough to the original curve. If the system requires higher levels of accuracy, it is recommended that the user approaches the pump manufacturer and obtains a new capacity curve based on the exact speed and impeller size you wish to model.

Pump is Viscosity Law Corrected: Performance curves for centrifugal pumps are generally based on testing with clean water. The pump performance therefore needs to be corrected if the fluid being pumped has a viscosity of 4.3 cSt or higher. Note, the value of 4.3 cSt is taken from the pump performance correction chart data detailed in the Hydraulic Institute

s.

The reason for this correction is the pressure loss in the impeller and diffuser channels, the impeller friction and internal leakage losses depend to a large extent on the viscosity of the pumped liquid. Consequently, characteristics ascertained for water lose their validity when pumping liquid of higher viscosities, such as oil. In general, the higher the viscosity of the liquid compared to water, the greater the loss of delivery capacity and head for a given power input.

In general, the resulting de-rating of the pump head and flowrate may be relatively modest though the de-rating of the efficiency can be significant with consequences for motor size, switchgear and cabling if not taken into account.

FluidFlow will perform viscosity correction for the pump based on the Hydraulic Institute Standards.

Note, the correction applies only to centrifugal pumps delivering Newtonian fluids and the software will only apply the correction when a "Check-Mark" has been placed in the Global Settings Option titled "Include Viscosity Correction Factor for Centrifugal Pumps" (Figure 1) AND the flowing fluid viscosity exceeds 4.3 cSt.

Note, the Hydraulic Institute Standard correction methodology is valid between the viscosity range of 4.3 - 3300 cst which is the criteria which is implemented in FluidFlow.

This automatic correction will only occur if the option has been enabled from the Global Settings tab which can be accessed by selecting: Options | Calculation | Global Settings or alternatively, select "F2" & Global Settings (See Figure 1).

Calculation Settings Globals Tab - Viscosity Correction

Figure 1: Global Settings Dialog.

Unexpected Pump Results: If we have not defined the capacity curve for a centrifugal pump across the full quadrant and the calculated duty point for the pump is beyond the curve data available, we may achieve unexpected operating results for the pump. Figure 2 shows the capacity curve for a sample centrifugal pump. As we can see, the capacity curve is not defined across the full quadrant, i.e., the maximum curve coordinate is 2816.8 usgpm at 96.14 m fluid. If we were to model this pump in a system and the duty point was beyond this maximum coordinate value (e.g. 3100 usgpm), we may get unexpected results. This is simply due to the fact that the software needs to extrapolate the curve relationship data and provide an estimated value.

pump capacity curve

Figure 2 – Pump Capacity Curve (Not Defined Across the Full Quadrant).

End suction centrifugal pump curves supplied by manufacturers rarely extend far to the right hand side of the quadrant. It is therefore recommended that users make an estimate for the final curve coordinate. The estimate you make can be guessed (this is OK because we will never operate the pump anywhere near to this condition). When you make the guess at head of zero, ensure that you do not "upset" the shape of the curve for the valid data points by selecting a value that lies on a smooth curve. If you do not make this guess you run the risk of using the pump in a system that is difficult to solve (converge).

Figure 3 shows how an additional row has been added where we have made an estimate of the flow at 0 head. As you can see, the curve still intersects the coordinates and is an accurate representation of the manufacturer's data. The Max Limit is retained as 2816.8 usgpm. If we solve this pump in a system and the duty point is beyond the Max Limit of 2816.8 usgpm, we will get sensible results as the curve is fully defined, however, we will also receive a warning message to that effect. This informs us that we are operating outside the range for the pump based on available manufacturer's data. We would therefore need to investigate the pump performance further with the vendor or select an alternative pump model.

Further information on defining pump curves in the Database is available at: Databases | Centrifugal Pumps.

Pump Capacity Curve Zero Head Estimated

Figure 3 – Pump Capacity Curve Defined Across Full Quadrant.

Booster is operating in reverse flow direction: This warning arises if the pressure downstream of a pump is greater than the maximum pressure the pump can deliver. Select a larger pump or alternatively, reduce the downstream pressure, increase the pump speed or fit a larger impeller in an attempt to increase the pump capacity.

Negative Static Head: The starting point of the system resistance curve is dependent on the characteristics of the system and although you may not expect it, the system curve can start at a negative value on the head axis. This can occur in systems whereby the design inlet/outlet pressure are such that flow would occur through the system without the presence of a pump. It can also occur in systems whereby the gravity effects alone would develop flow without a pump. Obviously, the flow rates achieved in these circumstances are most likely lower than you would require from the system and as such, a pump is generally included in the system.

When a piping system exhibits the above conditions, the system resistance curve is plotted exactly as for any other case except that the static head is now negative. The system curve therefore begins at a negative value and also shows the flow rate which would be developed in the system by gravity/differential pressure alone. This is the point where the plotted system curve intercepts the flow axis.

To demonstrate this condition further, let's consider the model in Figure 4.

Pumped Gravity System

Figure 4: Negative Static Head.

The model on the left hand side exhibits flow through the system without the use of a pump. The flow rate achieved from gravity alone is 16 m3/h. The model on the right hand side is identical with the exception that it now includes a manufacturer's pump and the flow rate developed in the system is now 39 m3/h.

The supply tank in this design case has an elevation of 14.0 M with a liquid level of 1.0 M and a surface pressure of 1 ATM. The fluid pressure is therefore 14.0 + 1.0 = 15.0 M fluid.

The outlet point has an elevation of 10.0 M.

Therefore, the static head = 10 - 15 = - 5.0 m fluid which represents the starting point on the Head axis (see Figure 5).

Pump Negative Static Head v3.42

Figure 5: Negative Static Head (- 5.0 M).

Figure 4 illustrates that the flow occurring in the system through gravity effects is 16 m3/h. Adding the specific manufacturer's pump increased the flow rate to 39 m3/h. Figure 5 shows that the system resistance curve intersects the flow axis at 16 m3/h and 0 m head, i.e., the flow rate achieved through gravitational effects alone.

Pump Static Head: On the subject of static head, this refers to the difference in elevation thus, the total static head of a system is the difference in elevation between the liquid levels at the discharge and suction points of the pump. The static discharge head is the difference in elevation between the discharge liquid level and the pump centerline. The static suction head on the other hand is the difference in elevation between the suction liquid level and the pump centerline. If the static suction head has a negative value because the suction liquid level is below the pump centerline, it is often referred to as static suction lift. If either the suction or discharge liquid level is under a pressure other than atmospheric, this pressure can be considered as part of the static head or separately as an addition to the static head.

Modelling Submersible Pumps: When modelling a submersible pump which of course has no suction piping, it is necessary to insert a short section of pipework between the model inlet boundary and the pump suction connection. This is necessary to complete the model connectivity. Figure 7 provides an illustration of such a design case where just 0.1m of "suction pipework" is included in the system. The pressure loss across this "suction pipework" is almost negligible relative to the losses across the other pipes and fittings in the system.

Figure 7: Submersible Pump Modelling.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Fans & Compressors

Design Note:

When we add a new fan to the FluidFlow database, we are required to assign the reference volume flow conditions for the fan performance data, i.e., STP or NTP (15°C and 101325 Pa or 0°C and 101325 Pa respectively). This data is usually available from fan manufacturers. In Figure 1, we can see that fan model Radial Blower RB75 is defined as having STP Volume Flow Conditions.

Fan Performance Database Editor v3.33

Figure 1: Fan Data Entry.

If we select the field titled Capacity Curve Data in Figure 1, we can access the fan performance curve at STP. Figure 2 provides an overview of the data entry for this booster.

Fan Performance Curve v3.33

Figure 2: Fan Performance Curve

If however we were to model this fan in a system transporting air at a different temperature and pressure condition to that of STP, FluidFlow will correct the fan performance curve automatically. The actual flow rate, density, etc., will then be calculated accurately based on the corrected fan performance. When you view the performance curves for the fan on the Chart tab of the Data Palette, you may notice the performance curve has been corrected/adjusted accordingly.


Flow Control Valves

Calculation Error/Model Fails to Converge: Modelling multiple flow control valves in series can occasionally cause convergence errors due to the system becoming over-constrained.

It is recommended that users give careful consideration to the positioning of flow controllers and the controlled flow rate.

Design Note: It is recommended that flow control valves are not modeled in series with known/fixed flow boundary nodes or centrifugal pumps which are set to Automatically Size as this leads to duplication of defined system flow rates which may or over-constrain the model.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Tees, Wyes and Crosses

Calculation Error/Model Fails to Converge: If you are confident in your data entry, the reason for non-convergence may be that a cross or tee is outside the experimental range used in the software. Use the List Inspector to select all tees and crosses and replace them with Connectors with No Resistance. If this is successful, then replace the Connectors one-by-one with the original junction until the culprit(s) is/are found. Usually it's one where flow is near zero or where there is symmetrical flow into or out of the branch.

Flow through the Tee is unstable: This warning is enunciated due to flow instability in the SAE tee relationship in a given system. Internally, the software will revert to Crane type tee in order to get an approximate solution. It is however important to note that the Crane loss relationships do not take into consideration velocity changes or kinetic energy losses and as such, is not as accurate as the other available tee relationships, i.e., Idelchik or Miller.

As a means of cross-checking your model results we would suggest the following:

1.Set the status of all tees to "Ignore Pressure Loss", calculate the model and record the flow results for a selection of pipes. We will then compare the results for the selected pipes when carrying out step 2.

2.Change all tees, firstly to SAE, then Idelchik, Crane and finally, Miller. Calculate the model after each change and record the flow results for the same selection of pipes.

You will now have a clear overview of the system flow rates based on each type of tee loss relationship, including the "Ignore Pressure Loss" option. This will allow the user to establish the most accurate relationship and results.

You may find when modelling a system with Idelchik or Miller tees that you have a warning indicating that the calculated K value may be outside the allowable range. It is therefore worth checking the calculated K values to ensure they are within the accepted range, i.e., -2 to 10. You can also cross-check these values by comparing to one of the other tee loss relationships. This will help verify that the calculated K values and pressure losses are similar.

Note, you can multi-select and change all tees in the model in one action by selecting the "List" tab on the data palette followed by "Junctions" and using the scroll bar, scroll through all junctions until you display the tees. Simply left mouse click on the first tee and, holding the shift key, select the final tee. You will now see all tees have been selected on the flowsheet.

Idelchik Tee relationship outside allowable range: This warning applies to tees which have been solved using the Idelchik pressure loss relationship. This relationship takes into consideration different sized pipe connections at the tee junction. When solving Idelchik tees, the calculated K values have a range limitation (approximately -2 to 10). The area of the branch and straight pipes must be greater than the channel pipe area or the straight and channel pipe area must be identical.

A key point to note is that the assignment of the branch connection (RED DOT) for each tee junction in your model should be set correctly and in accordance with the expected flow distribution. This will ensure the highest level of accuracy. You may even notice that the warning(s) will disappear once this has been set correctly for each tee junction. There is a further explanation on the assignment of the branch connection in the Help file at:

Junctions | Tee and Wye Junctions | Data Entry - Tees and Wyes.

You can also view further information on this topic by selecting an Idelchik tee junction on the flowsheet followed by the Nomenclature row on the Input tab of the Data Palette.

Note, even though there is a range limitation of -2 to 10 for the K values, the software extrapolates the equations to arrive at an accurate K value for the branch and straight at each tee junction. If the K value is within the expected range, we can safely ignore the warning. If the K value is outside the range, we would recommend setting the tee definition to Miller or Crane and comparing results. If the results across the different pressure loss relationships are similar, you can have confidence in the results you have developed.

In general, the Miller or Idelchik relationships are considered most accurate. You may notice you develop this warning when modelling tee junctions using either the Miller or Idelchik relationship since both approaches take into account different sized pipe connections whereas Crane doesn't. So, if you set the relationship for the tee junction(s) to Crane, the warning will not appear.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Relief Valves

Calculation Error/Model Fails to Converge: Occasionally when modelling relief valve systems you may obtain a "Calculation Error" without any flow direction indicated. If this occurs, try changing the Relief Valve node for a "Connector" component by right clicking on the relief valve and selecting "Change Component". Ensure the option titled "Keep All Common Property Values" is checked ON. This will ensure any elevation data, etc., is carried over to the new component.

Now try calculating the system and review the available pressure at the location of the original relief valve. This will allow you to review the system pressure against the relief valve set point pressure. You can now make any amendments necessary to reach a design solution.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Valves

If you intend modelling the effects of changing the % opening of a two-port valve in a system, we need to ensure that the flow vs. pressure loss data for the valve has been defined in the database.

Many valves in the database have the flow vs. pressure loss defined. This relationship can be defined by: 1) K with positioning, 2) Kf with positioning or 3) Cv,Kv with positioning.

If a valve has been defined in the database by: 1) K no positioning, 2) Kf no positioning and 3) Cv-usgpm/psi no positioning, 4) Kv-m3/h/kPa no positioning or 5) Kv-l/min/bar no positioning, we will not be able to model changes in the % opening of the valve from the Input Inspector.

Figure 1 below provides an overview of how a valves flow vs. pressure loss relationship may be defined in FluidFlow.

Figure 1: Two-Port Valve Flow vs. Pressure Loss Definition.

Fire Hydrants.

The FluidFlow Valves Database contains two hydrant types: 1) Typical Free Flowing & 2) Recordall Turbo 450. The "Typical Free Flowing" hydrant has its pressure loss characteristic defined as "K no positioning". This simply allows one characteristic value to be entered for the valve, in this case 4.5 bar g, at 100% open. For further information select: Database | Valves | Fire Hydrant | Typical Free Flowing. Fire hydrants are usually operated in the fully open position and there is usually a downstream resistance such as a flexible hose and nozzle. If you wish to operate in a throttled position then you need to enter further data for the hydrant to the database.

The "Recordall Turbo 450" fire hydrant has its pressure loss characteristic defined as Cv,Kv with positioning. This therefore means we can model this valve and throttle the valve opening position in which case, we will get lowering of flow through the valve with progressive throttling of the valve position.

Design Note: Fire hydrant systems may be modeled with Known Pressure boundary nodes at each outlet point which means we can define the back-pressure for each hydrant in the system. This will allow you to increase the back-pressure downstream of the hydrant using a "trial and error" approach. This will then give you the design flow and the maximum back pressure of any fire fighting equipment downstream of the hydrant.

You can also add you own specific hydrant to the database by selecting: Database | Valves and Select "Fire Hydrant" followed by "Add". This will enable you to model your specific hydrant in the system.

Size Mismatch Warning

This warning will be enunciated when the inside pipe diameter connecting to a given valve doesn't match the valve diameter as defined in the database. You can overcome this warning by selecting a different pipe diameter or inserting reducers into the connecting lines.


Rotating Positive Displacement (PD) Pump

Static Pressure below fluid vapor pressure or negative: This warning may occur if you have modeled a PD pump in series with a Known Flow node. By using these two nodes in series we are over constraining the model. The calculated flow rate developed by the PD pump is a function of engineering conditions (pipe diameter, length, etc.) and pump speed and cannot be manipulated by designating a Known Flow node. It is therefore best to model this scenario with known pressure nodes at the system boundaries and adjust the pump speed to reach the desired flow rate.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Known Flow

Design flow rate set to Zero on Input Tab: If you have a Known Flow node defined in a system with a flow rate of zero, it is recommended that the status of this node is set to "Off or Closed" as this will help model convergence.

It is also recommended that a Known Flow node is not modeled directly in series with a relief valve, flow control valve or a centrifugal pump which is set to Auto Size on design flow rate, as this will potentially over-constrain the system or duplicate an already defined flow rate. Try switching the Known Flow node for a Known Pressure boundary node.

If any of the above is unclear or you require any further information, please contact us at: support@fluidflowinfo.com.


Convergence Tolerances have been relaxed

This message appears simply to make the user aware that the default convergence tolerance settings have been automatically relaxed by the software in order to converge the model. However, the criteria will only be relaxed in FluidFlow to levels of, for example, 0.01% or 0.1% in order to converge. FluidFlow then enunciates a warning to make the user aware of this condition. As flow calculation accuracy is required to approx. +/- 5%, the calculated results will therefore still be accurate. It is however recommended that the engineer reviews the model messages to determine if there is a more effective and efficient design solution.

If the network doesn't converge with this level of accuracy, then FluidFlow enunciates a warning indicating "the network has not converged".

The default convergence tolerance criteria can be viewed by selecting: Options | Calculation | Convergence Criteria. Users can adjust the calculation convergence criteria from this dialog however, unless you have a valid reason for doing so, it is not recommended that you adjust these settings. At the limit of convergence, the solver can exit before full convergence has occurred, this results in inaccurate answers. If this condition arises, you can always talk to our support team (support@fluidflowinfo.com) if you have a network that is difficult to converge.


Size Change Components

When modelling Size Change components such as Thin Orifice Plates, Thick Orifice Plates, Venturi Tubes, Inline Nozzles, etc., we have the option of setting the Status of these nodes to Ignore Pressure Loss. By selecting this Status, the software will skip the pressure loss calculation associated with the element.

It should be noted that if Ignore Pressure Loss has been selected, the stagnation and static pressures at the element inlet and outlet will be identical. However, as we have a restriction in the line, the velocity will increase across the element which will result in an increase in the associated velocity pressure. Since the stagnation pressure across the element will be constant, if the fluid velocity and velocity pressure increases considerably, the static pressure across the element may be negative (conservation of energy laws). Users may wish to review the design and data entry in further detail if this scenario arises.


Settling Slurries

Saltation/Blockage Warning

When designing slurry flow systems, FluidFlow will enunciate a warning notifying the designer that line blockage may occur if the calculated line velocity is below the slurry deposition velocity. This helps the engineer develop an efficient operating system.

Figure 1 provides an overview of the flow regime associated with a given point on a system resistance curve.

Charts Slurry Resistance - Hints & Tips

Figure 1: Slurry Pipe Resistance Curve.

Based on the above illustration, we can see that as flow rate/velocity decreases, the flow regime moves from pseudo-homogeneous to heterogeneous suspension (no deposition), through sliding bed and ending up with a stationary bed/blocked pipe.

When designing a slurry system, it is recommended that we review the minimum transport velocities at all anticipated flow rates and particle concentrations. The pump suction pipe is usually the largest diameter and as such, often presents a likely location for sanding.

A slurry system is partially self-limiting as, when the effective area of the pipework decreases, the velocity is forced to increase.

If a slurry system has solved such that the duty point is positioned to the left of the curve apex (deposition point), the system is likely to operate as a sliding bed which increases pie wear and energy costs. In a worst case scenario the system can also develop a pipe blockage. It is therefore good practice to develop a plant which operates to the right hand side of this apex point. Users can quickly compare deposition velocities with actual line velocities and study the resistance chart for each pipe which allows us to develop more efficient systems.

Liu Dezhong

When modelling slurry flow systems using the Liu Dezhong correlation, a value for Cvd Deposition Velocity may not appear on the Results table. This can occur if the Liu Dezhong method establishes that the slurry you are modelling is in fact, non-Newtonian, non-settling slurry in which case, there is no associated deposition velocity. If this is the case, we would recommend obtaining rheology data for the slurry. This will help characterize the slurry accurately allowing you to select the most appropriate modelling approach.

If you wish, you can review the particle sizes defined for the slurry at the system inlet boundary and increase the portion/percentage of the larger particle sizes defined at the inlet boundary. When you recalculate the model, you may then see a result displayed on the Results table for deposition velocity as the properties of the slurry will have changed from non-settling to settling due to the higher concentration of larger particle sizes. The pipe resistance curve will also have changed accordingly.

If your model has solved with Liu Dezhong and without a value for deposition velocity, the Results table for a pipe will appear as per Figure 2. As we can see, the fluid phase is described as non-Newtonian.

Liu Dezhong Deposition Velocity Removed

Figure 2: Liu Dezhong Correlation - values for deposition velocity not displayed.


Quality Assurance

This chapter is an attempt to explain the procedures, processes and efforts made by Flite Software NI Ltd., the developers of FluidFlow, to minimize the occurrence and impact of errors in the end user operation and functionality of our software.

To be effective, a Software Quality Assurance policy needs to be an integral part of the entire life cycle of our software application. In addition, our Quality Assurance policy is continually evolving as we find more effective ways of developing and validating our software. This document provides an overview of where we are today and how the "Quality Assurance focus" is integrated into our business and life cycle processes.

The life cycle of our product "Piping Systems FluidFlow" has many steps. Each step has its own distinct validation requirements.

In this context validation is defined as establishing, by objective evidence, that all software requirements have been implemented correctly and fully.

In addition to validating each process step the integrated product needs also to be validated.

The remainder of this document is therefore split into two logical chapters:

1.A description of the individual steps in our product life cycle.

2.An overview of the main standards and methods used in our calculation procedures.


The life cycle of Piping Systems FluidFlow

The life cycle steps that occur in the development and post-development of our product are itemized below. The validation involved in each step is then described in a separate sub section.

Development Steps:

§Software Requirements and Specification

§Overall Design and Architecture

§Model Development

§Algorithm Development

§Coding

§Integration

Post Development Steps:

§Integration Testing

§Data

§Installation

§User Operation

§Maintenance


Software Requirements and Specification

The main purpose of this software is to enable engineers to make designs of flow systems that are:

§Practical

§Safe

§Efficient

§Reliable

To achieve the above end user design goals, the software must be easy to use, comprehensive, robust, and of validated high quality using the latest, appropriate, calculation techniques and prediction methods.

Our product does not stop there, it is also important that the engineer can communicate their designs for peer review and directly to customers.

This document does not discuss further, design and specification of the user interface, or other functional input/output specifications but focuses on the main engineering specifications.

The product is designed to calculate phase state, pressures, pressure losses, temperatures and flows for any fluid(s) flowing in a piping system. The system must be at steady state conditions.

Phase states handled by the software can be liquid, gas, non-Newtonian, solid-liquid two phase slurries or liquid-gas two phase. There are many calculation methods available in the literature that can be used for the prediction of energy losses in flowing systems and for the prediction of physical and transport properties that are needed to support these calculations.

Unfortunately there are no agreed universal standards for the method to be used in each specific case. Where internationally recognised design and calculation standards or methods exist FluidFlow uses the appropriate standard. Standards and calculation methods used are detailed in the Standards chapter.

Where standards do not exist regarding a calculation method or physical property prediction FluidFlow always offers alternative methods to the end user.

It is the responsibility of the engineer/end user to exercise due care and diligence by selecting an appropriate method and to interpret the results with knowledge of the simulation limitations.

It is recommended that all results should be subject to a proper engineering review and judgment by the end user.

Our validation procedures are designed to ensure each calculation method does not fail under extreme conditions.


Overall Design and Architecture

One of the main goals of our software architecture is to encapsulate each of the many hundreds of "building blocks" used by the application.

In this context encapsulation means the ability to group code together to provide a service or functionality accessible through a well designed interface. Encapsulation hides the internal workings of each building block and streamlines code testing.

By designing and validating in this way it allows us to define quality as a system requirement. It provides a higher degree of reliability and provides opportunities for code reuse.

Take for example the request for a thermo physical property, say density, which is commonly used by all of the calculation methods. The density of a fluid is a function of phase state, pressure and temperature. At the most abstract level (i.e., the actual implementation of the encapsulated building blocks/objects is more detailed than described here) all we need to do is to make a call to a building block passing to the interface the phase state, pressure and temperature and the object passes back the density, and maybe an status/error condition. Once the building block has been written and validated it can be used without worry.

Of course, the detail is more complex and we must also consider data flows, efficiency, what to do if an error is generated, etc.

Designing in this way also makes the code more adaptable to changing technology and business needs.

Encapsulation is critical to building large complex software that can be maintained and extended. Many studies have shown that as new features and functionality are added the risk of "breaking existing parts of the software" is minimised by having a well designed encapsulated product.


Model Development

Our software uses many mathematical models to simulate physical phenomena. These models rely on established laws of physics or on empirical relationships. Often the models are only approximate in nature or have a limited validity range.

Validation of these models includes dynamic, static and formal techniques.

Dynamic techniques demonstrate the software's behavior in response to selected inputs and conditions. We use prototyping to verify the hardware response to software events and commands. Dynamic and static testing demonstrates compliance with the engineering and functional specifications. Each test case has a predetermined, expected, explicit and measurable output result.

As an example, consider the pressure loss through a pipe bend. The total pressure loss across a bend is a function of bend geometry, the empirical relationship used, the volumetric flowrate of the fluid, the constructional material of the bend (roughness of the inside wall), the fluid physical properties of density, viscosity and phase state.

Testing just one of these variables, say bend geometry, means comparing calculated results with research papers, textbook examples and hand calculated values for bends of different angles, R/D ratios, circular, annular and rectangular cross sections and establishing that the pressure loss calculation returns expected results in each case. Testing in this way also enables us to define limitations to accuracy which are then used as warnings within the software. Without this detailed validation it is impossible to specify the limits of accuracy, because they are often unavailable from literature sources.

Sometimes textbook examples are incorrect and an element of engineering judgment is necessary to be able to identify this.


Algorithm Development

An algorithm is a logical procedure for solving a model's mathematical equations. It takes input data and transforms it into output predicted by the model. We use logic and data flow diagrams to illustrate and define the logical sequence of events.

Algorithms serve as a bridge between the model and the code, where the program code follows the sequence of activities required by the algorithm. Over the last 20 years we have established well tested, efficient and tried algorithms for commonly needed tasks.

Where possible these algorithms have been encapsulated. An example of a common task when solving mathematical models is the need for a solution to an explicit equation.

Explicit equations cannot be solved directly but require an iterative solution.

Specifically, we might consider the calculation of friction factor via the Colebrook-White equation. By using an encapsulated, validated, generic algorithm such as Newton-Raphson, Successive Approximation or Secant we eliminate the need to write specific code for the solution of the Colebrook-White equation.

Algorithm analysis is carried out to ensure that the criteria of accuracy, timing, stability and size requirements are met.

Consistency checks are made where appropriate. For example, consider the adiabatic flow of a compressible fluid in a pipe. To be consistent we should be able to take any of the Fanno flow property relationships and ensure that these conditions are consistent from low flows right up to the speed of sound.


Coding

Coding is the language used to communicate the algorithm to the computer. A compiler converts this code to an executable file. Our application produces one executable file without the need for associated DLL's. This streamlines our maintenance and updates procedure.

Where possible we purchase "best of breed" toolkits, this avoids wasting time "re-inventing the wheel" and ensures an up to date look and feel to the software.

The compiler and integrated development environment we use provides excellent debugging features which helps to validate new code and also speeds up the bug finding and elimination process.

We operate a coding style using strict internal guidelines. This means that code written by one programmer is always consistent in its layout, structure and well commented. This allows for easier cross checking, helps cross-fertilise ideas and can be quickly understood by all team members.


Integration

Our software is developed by a closely knit, experienced team of engineers and computer scientists. This means that the many building blocks in our software are often written by different team members. Integration is the meshing of the individual contributions into one coherent system. The use of a consistent coding style, documentation and our software architecture reduces potential problems in this area.

To facilitate easier development and integration all team members have access to design documents, model descriptions, algorithm descriptions, engineering specifications and requirements, functional specifications, control flow diagrams, data flow diagrams, source code and database files.


Integration Testing

Once the application is integrated/assembled into a complete product, there is a need for a formal Quality Assurance testing procedure.

Before each release we undertake a formal testing procedure. Currently this testing procedure takes about 20 man days of effort. As well as testing all aspects of the user interface we have over 630 validation calculations.

The validation calculations are issued with each release of the software and can be found at the following locations:

[FluidFlow3 folder]\QA Incompressible Flow

[FluidFlow3 folder]\QA Compressible Flow

[FluidFlow3 folder]\QA Non Newtonian Flow

[FluidFlow3 folder]\QA 2-Phase Flow

[FluidFlow3 folder]\QA Saturated Gas & 2-Phase Flow

[FluidFlow3 folder]\QA Equipment Sizing

[FluidFlow3 folder]\QA Petroleum Fraction

[FluidFlow3 folder]\QA Scripting

Each time a user reports a bug, we add a validation example to our QA testing files so that the likelihood of a recurrence is drastically reduced.

Validation examples are designed to test each calculation method used for consistency, accuracy, repeatability. The Quality Assurance examples are also a useful source of explaining the capabilities of the software for a new user.


Data

The calculation methods used within the application often rely on some type of supporting data.

Typically this data may be used to describe physical properties, transport properties, to describe pressure loss against flow relationships or to support heat transfer and energy balance methods.

The results delivered by Piping Systems FluidFlow are dependent upon the accuracy and relevance of input data.

Data contained in the support databases that are delivered with the application is not all sourced, entered and validated by Flite Software NI Ltd. This is because the databases contain data entered by our end users. In this regard we act as a clearing house to merge data from a wide variety of users.

End users are recommended to validate all input and database data used in their calculations.


Installation (COPY)

Navigation: Quality Assurance > The life cycle of Piping Systems FluidFlow >

Return to chapter overview

Installation

Flite Software NI Ltd has made a special effort to simplify the installation process. We have thousands of installations worldwide on a variety of operating systems.

We have code embedded in the application that checks that an installation has been successful.

The application code is compiled into one executable file and we do not make any changes or additions to the windows registry. For users operating in locked down environments we supply an installation 'footprint' as an alternative.

The software has also been fully tested for use within Terminal Services, Citrix, and Novell environments.


User Operation

All users are actively encouraged to feedback their experiences with our software.

Users can provide feedback via our website www.fluidflowinfo.com or directly via the application.

All code within the application is routed through exception handling constructs. This means that if the software fails in any way, it writes to a log file providing the date, time, reason and type of each failure together with resource and status information about the hardware where the failure occurred. This log file is called psff.elf and is written to the same folder that holds the single application executable file psff.exe.


Maintenance

Software maintenance is the main mechanism for making improvements, corrections and adaptations to the application.

Corrective maintenance resolves errors found during the operation of the software. Each time a bug is reported to Flite Software NI Ltd, we verify that the bug exists and then enter the details into our "tracking and resolution" system. We issue regular maintenance releases.

The release numbering convention used by this product has the format [Major Version].[Minor Version].[Build Number]. So for example if the current release is 3.22.4 the next release will be either 3.22.6 or 3.30. The deciding factor on the number of the next release depends on the severity of any bugs found also on the enhancements and improvements made.

Perfective maintenance is carried out to improve the application performance or to add or improve other program attributes. Only enhancements or new features cause the minor version number to change.

It is the users' responsibility to keep the software current via our website. We provide Software Assurance that enables continued access to the downloads area of our website.


Calculation Methods and Standards Used

FluidFlow uses hundreds of engineering models and it is not the intention to list all possible models here.

The models highlighted in this chapter represent the main models used by the application together with the references where appropriate.


Standards Used

There are very few standards available for use when making fluid flow calculations. FluidFlow makes use of the latest standards and guides where possible.

For calculating pressure losses across control valves for liquid and gas flow the software uses the following guide: ANSI/ISA-75,01.01-2007 - Flow Equations for Sizing Control Valves.

For predicting all physical properties of water we use the IFC-97 formulations developed by the International Association for the Properties of Water and Steam.

For calculation of liquid or gas flow pressure losses across orifice plates we use the publication from the International Organization for Standardization - ISO 5167-1:2003 Part 1. Measurement of fluid flow by means of pressure differential devices inserted in circular cross-section conduits running full.

For calculation of liquid or gas pressure losses through nozzles we use ISO 5167-1:2003 Part 3.

Relief Valves are calculated according to the ASME Code Section VIII & ISO 4126-1.

Pump Viscosity HI Correction method calculated according to 2015 method.

FluidFlow uses two calculation methods for predicting the pressure loss through relief valves, API RP 520 & ISO 4126. API RP 520 caters for Newtonian liquids, steam, gas/vapors and two-phase flow. ISO 4126 caters for liquid and gas flow only.


Liquid Pressure Loss Calculations

For calculating liquid friction losses in a physical pipe of any material, we use the Darcy Weisbach equation and the Colebrook-White formula for calculating friction factor.

It is possible to configure the software to use other methods such as Hazen-Williams or Shell-MIT.

The Shell-MIT method is used in the calculation of pressure loss in heavy crude oil and heated liquid pipelines and should be used for such specific cases. It is not recommended that users use this method for substances other than that described herein.

The Hazen-Williams method for predicting friction loss is useful for designing fire protection and irrigation systems. It is not recommended that users use this method for substances other than water. Overall fire sprinkler system design guidelines are provided by the National Fire Protection Association (NFPA) 13, (NFPA) 13D, and (NFPA) 13R.

Pressure losses through sprinklers can use the K method or the user can enter data directly from a specific manufacturer.

For the calculation of pressure losses through bends, tee and cross junction the user can select from one of four available relationships:

§Using relationships and data found in the Handbook of Hydraulic Resistance - 3rd Ed - I.E. Idelchik.

§Using relationships and data found in Internal Flow Systems - 2nd Ed - D.S. Miller.

§Using relationships and data found in Flow of Fluids through Valves Fittings and Pipe - Crane Technical Paper 410.

§Using relationships and data found in AIR1168/1 - Thermodynamics of Incompressible and Compressible Fluid Flow.

Performance data for centrifugal pumps, positive displacement pumps are usually taken from manufacturers data. We have developed utility software that can read and convert data directly from manufacturers catalogs.

Pressure Losses through valves can be calculated from generic relationships found in the Miller and Idelchik references above. Additionally the software can use relationships based on Cv or Kv values which the user can enter.

Pressure losses through check valves use the K method.


Gas Pressure Loss Calculations

For accurately calculating pressure losses in gas pipes there is no simple formula, as is the case for liquids. This is because the specific fluid physical properties of density, temperature and enthalpy do not remain constant over the pipe length.

The FluidFlow gas calculation routines are rigorous calculations which allow for the increase in kinetic energy and changing physical properties that occur as gas accelerates with pressure loss. The calculations allow for the changing non-ideal behavior of the gas as it flows by using an equation of state to describe the changes in gas physical properties.

There are three equations of state (EOS) available within the software (Benedict Webb Rubin with Hans Starling modifications, Lee Kesler, and Peng Robinson), it is possible to select the most appropriate EOS for each physical property. Using the EOS the gas thermophysical properties such as enthalpy and density are calculated as the gas accelerates. An analytical solution to the EOS, energy and momentum equations is not possible and FluidFlow solves these equations numerically. FluidFlow makes no assumptions of gas ideality or adiabatic flowing conditions.

Our algorithm dynamically splits the pipe into segments based on an incremental density change. For each segment, upstream conditions of flow, static pressure, static density and static enthalpy are known and these are used to calculate downstream static temperature and density. From these values it is possible to backsolve the EOS to obtain downstream static pressure. The energy equation and momentum equations can now be solved for each segment. The method is a development of a paper originally published in The Chemical Engineer - Relief Line Sizing for Gases Part1 and 2. Dec 1979 - HA Duxbury.

For pressure loss calculations across other fluid equipment items refer to the liquids section.


Non Newtonian Fluid Pressure Loss Calculations

FluidFlow provides the user with the option of selecting one of four possible calculation methods for determining pressure loss for Non-Newtonian fluids flowing within a pipe system.

The available calculation methods are based on the relationships used to describe the fluid rheology data. It is recommended that the user obtains fluid rheology data prior to making a Non-Newtonian calculation. The available rheology models are:

§Power Law with the friction factors calculated according to the relationships provided by Ron Darby - Chemical Engineering Fluid Mechanics.

§Bingham Plastic with friction factors calculated according to the relationships provided in Darby together with the solution of Buckingham Reiner equation.

§Hershel-Bulkley with friction factors calculated according to the method of Dodge and Metzner.

§Casson with friction factors calculated according to the method of Wilson Thomas.

For calculation of pressure losses across other fluid equipment items the K factor method is used. K factors are adjusted at low Reynolds numbers as recommended by Steffe - Non-Newtonian Flows in the Food Industry


Settling Slurry Pressure Loss Calculations

FluidFlow provides the user with the option of selecting one of five possible calculation methods for determining pressure loss for the flow of settling slurries through a piping system. For settling slurries, i.e., a "carrier fluid" conveying solid particles, the calculation is considerably more complicated than a liquid calculation, due to the wide range of variables involved, viz particle size and size distribution, solids density and shape, percent solids, mixture velocity, etc.

The accepted approach is to determine the 'solids effect', the extra friction loss caused by the solids content over that for an equivalent flow of the carrier fluid alone. The carrier fluid may be clean water if the solids are relatively coarse with no fraction below about 0.4mm but solids smaller than 0.4mm can be held in suspension and create a 'homogeneous' carrier fluid, the friction characteristics of which needs to be determined.

A number of interrelated factors influence the excess pressure drop in a pipeline over the pressure loss for water alone (or the carrier fluid if a fine particle fraction exists). The two main factors are the solids characteristics and the velocity of flow of the mixture but pipe inclination is also important.

The design method is highly empirical. "Slurry Transport Using Centrifugal Pumps", by KC Wilson, GR Addie, A Sellgren and R Clift provides the best reference with a synthesis of the authors' many papers together with "Introduction to Practical Fluid Flow" by R.P. King provides some useful additions.

These two references, and a considerable amount of literature research, provided the basis for the development of the FluidFlow Slurry simulator.

FluidFlow simulates heterogeneous settling slurries according to five correlations:

§Durand-Condolios-Worster

§Wilson-Addie-Sellgren-Clift

§WASP

§Sellgren, Wilson Four-Component Model

§Liu Dezhong


Two Phase Pressure Loss Calculations

When two-phase liquid gas flow occurs in pipes, many different flow patterns are created, depending on fluid properties, the relative rates of each fluid and the pipe inclination. There are large differences in flow behavior between horizontal, inclined and vertical pipe flow. The pressure gradient (pressure loss per unit length) is flow pattern dependent. For a rigorous estimation of two-phase pressure drop we also need to split the pipe into segmental lengths, similar to the approach used in gas pipe calculations.

Our pressure loss algorithm dynamically splits the pipe into segments based on an incremental pressure change. The user can select from any one of eight available models:

§Whalley Criteria (uses Friedel, Chisholm or Lockhart Martinelli, selection of method is made by FluidFlow according to the criteria of Whalley).

§Drift Flux Model (2007 correlations).

§Beggs and Brill (Extended Regions).

§Friedel.

§Muller Steinhagen Heck.

§Chisolm Baroczy.

§Lockhart Martinelli.

§Homogeneous Equilibrium Model.


Physical Property Estimation Methods

FluidFlow can use any of the following thermophysical properties during flow calculations. Density, Specific Heat, Thermal Conductivity, Viscosity, Heat of Vaporization, Enthalpy, Melting Point, Vapor Pressure and Surface Tension.

The physical properties are often complex functions of pressure, temperature and phase state. Data needed to evaluate these properties at phase states, pressures and temperatures in the physical world are stored in a physical property database that contains over 1200 fluids.

The user can select any one of the following estimation methods:

For Liquid Density Prediction:

§A single fixed Value

§Yamada Gunn method with a reference density

§Spencer Danner method

§Yamada Gunn method without a reference density

§Interpolation from a table of values

§Peng Robinson Equation of State

§Benedict Webb Rubin Equation of State

§Lee Kesler law of Corresponding States

For Liquid Specific Heat Capacity Prediction:

§A single fixed Value

§A polynomial approximation

§Bondi estimation method

§Lee Kesler

§Interpolation from a table of values

For Liquid Specific Heat Capacity Prediction:

§A single fixed Value

§A polynomial approximation

§Latini estimation method

§Sato Riedel estimation method

§A log power law approximation method

§Interpolation from a table of values

For Liquid Viscosity Prediction:

§A single fixed Value

§A log polynomial approximation

§A natural log series

§Interpolation from a table of values

§Andrade method

§Przezdziecki estimation method

For Vapor Pressure Prediction:

§A log polynomial approximation

§Interpolation from a table of values

§Wagner estimation

§Antoine estimation

For Gas Density Prediction:

§Peng Robinson Equation of State

§Benedict Webb Rubin Equation of State

§Lee Kesler law of Corresponding States

§a polynomial based on ideal gas constants

§Lee Kesler law of Corresponding States

For Gas Thermal Conductivity Prediction:

§A polynomial approximation

§Chung estimation method

§Interpolation from a table of values

For Gas Viscosity Prediction:

§A polynomial approximation

§Chung estimation method

§Interpolation from a table of values

§Lucas corresponding states estimation

For Heat of Vaporisation Prediction:

§A single fixed Value which is adjusted by the software as a function of temperature

§An estimation method based on critical properties

For Liquid Surface Tension Prediction:

§A linear approximation

§An estimation method based on critical properties


Navigation: »No topics above this level«

Return to chapter overview

Miscellaneous


Command Line Parameters

/USER=Username

If specified, Username will be selected from the 'Username' dropdown in the Network Logon dialog.

Notes: With USER, the value passed in should match the name of a user in your FluidFlow3 users database. If the Username doesn't exist in the users database, or if this parameter is not specified on the command line, then the first entry in the database is selected in the Network Logon dialog.

/PASSWORD=Password

If specified, Password will be entered into the 'Password' edit box in the Network Logon dialog.

Notes: For PASSWORD, the value passed should match the password of the FluidFlow3 account associated with the /USER Username.

/AUTOLOGIN

When /USER (and /PASSWORD, if required) are specified with /AUTOLOGIN then the Network Logon dialog is bypassed and FluidFlow3 will start without prompting the user to login.

Notes: The specified USER must be valid: they can't already be logged in; they must have some modules specified for them in the user configuration; these modules must be available, i.e., they can't be in use by another user; and the PASSWORD, if specified, must match what's in the user configuration.

/RUN=ScriptFilename

If specified, ScriptFilename is executed immediately on startup.

/RUNQUIT=ScriptFilename

If specified, ScriptFilename is executed immediately on startup, and the application quits without any further user interaction.

The difference between /RUN and /RUNQUIT is that with /RUNQUIT, FluidFlow3 is terminated immediately after any script is executed. Whether you start FluidFlow3 with a .FF3 file, or not, on the command line, and /RUN (or /RUNQUIT) is specified with a ScriptFilename then that script file is executed; if you start FluidFlow3 with a .FF3 file and use /RUN (or /RUNQUIT) and don't specify a ScriptFilename, then any script embedded in the .FF3 file will be executed.

Examples:

"C:\Program Files (x86)\Flite\FluidFlow3\PSFF.exe" /USER=JOHN_DOE /AUTOLOGIN /RUN=C:\TEMP\TEST-1.PSC

"C:\Program Files (x86)\Flite\FluidFlow3\PSFF.exe" "C:\TEMP\test-embedded-1.ff3" /USER=JOHN_DOE /AUTOLOGIN /RUN=C:\TEMP\TEST-1.PSC

"C:\Program Files (x86)\Flite\FluidFlow3\PSFF.exe" "C:\TEMP\test-embedded-1.ff3" /USER=JOHN_DOE /AUTOLOGIN /RUN

"C:\Program Files (x86)\Flite\FluidFlow3\PSFF.exe" "C:\TEMP\test-noscript-1.ff3" /USER=JOHN_DOE /AUTOLOGIN /RUNQUIT=C:\TEMP\TEST-1.PSC

"C:\Program Files (x86)\Flite\FluidFlow3\PSFF.exe" "C:\TEMP\test-noscript-1.ff3" /USER=JOHN_DOE /AUTOLOGIN /RUN

NOTE: Only Pascal Script (.PSC) files are supported if you specify a ScriptFilename. If you don't specify a .FF3 file on the command line, a blank flowsheet is created by FluidFlow3 by default; the script will be run against this.


PSFF.INI File Entries

The PSFF.INI configuration settings file is located in the same folder as the application file, PSFF.EXE, typically in the "[Program Files (x86)]\Flite\FluidFlow3" folder. To edit this file requires 'Administrator' privileges in Windows.

Entry

Default

Description

AlwaysCreateBackupFolder

Defaults to blank. If specified a copy of every file saved (with the username added) is stored here.

AlwaysReloadFDBData

0

When true/on (1) certain equipment DATA - Fluids list and Pipe Roughness/Insulation/Scaling/Dimension data - is reloaded each time a dialog requiring it is displayed. When false/off (0), this data is only reloaded when it is changed.

CheckForUpdate

0

When true (1) the application checks for a new version when it starts up.

DataFolder

[Public Documents]\Flite\FluidFlow3\Data

Default location for where the application will store the equipment and fluid data files. (Users can specify a different location using the 'Database | Connections...' menu item.)

DataFolderMonitorInterval

60

The number of seconds the application should check the DataFolder for any changes in the network version. Defaults to 60, i.e., every minute.

DisableCheckForUpdates

0

Control the visibility of the 'Help | Check for Updates...' menu item. Defaults to 0 (False), i.e., this menu item will be displayed.

Language

ENGLISH

Default language to use on startup (for the Network logon dialog). This will be overridden by the language previously selected by a user when they log in.

MinPasswordLength

0

Minimum required length of Network User password. If 0, or missing, then no limit.

NetworkAccessFolder

[Public Documents]\Flite\FluidFlow3

Location of the license file (and list of users in a network installation.)

OpenSaveFolder

Folder for File Open and File Save for FF3 files. Defaults to blank, so will use the last used folder.

PreferencesFolder

[Public Documents]\Flite\FluidFlow3\Preferences

Default location for where the application will store the user settings.

ReleaseLicenseIdleTime

0

To avoid users "hogging" modules in a license, by leaving FluidFlow3 running and staying logged in when not using the application, you can add a ReleaseLicenseIdleTime entry to the Options section of the PSFF.INI configuration settings file, for example,

[Options]

ReleaseLicenseIdleTime=180

This is the number of minutes of application idle time before modules are released in your license. If not set, or 0, then this value is ignored.

SupportEMailAddress

support@www.fluidflowinfo.com.hs-inbox.com

This is the email address any support (or bug reports) emails get sent to from within the application.

UseBrowserHTMLHelp

0

When true (1) FluidFlow will look for a html-based version of the help system when F1 is selected. See here for more information.

UseDataTempFolder

0

When true/on (1) FluidFlow will use a TEMP folder located within the DATA folder for any temporary file needs. Otherwise, the default Windows TEMP folder is used.

UseNamedUserLicense

0

This is used to toggle the display of the Login Named User dialog on startup, if set to 1 (true). This dialog would only be relevant if you want to use the Named Licensing. For Standalone and Network installations, it's recommended to set this to 0.

UseUsersINI

0

Relevant only to the Network installation, when set to 1 (true), the Network Login dialog will load the users list from an FF3USERS.INI (text) file instead of the (binary) FF3USERS.DB file.


Logging Usage

It is possible to track usage as to who logs in, what modules they use, and for how long they use FluidFlow3. This is an optional feature, which is "on" by default. To control this setting (i.e., turn on/off), add an UpdateNetworkLogFile entry to the PSFF.INI.

- Create a PSFF.INI file (if it doesn’t already exist) in the same folder as the application, PSFF.EXE.
- Add an entry to the [Options] section:

[Options]
UpdateNetworkLogFile=1

(Note: To turn off, set UpdateNetworkLogFile=0)

Whenever a user starts FluidFlow3 the usage will be recorded in a FF3NLOG.CSV file. This file will be located in your NetworkAccessFolder location, if this has been specified in your PSFF.INI; if not specified, it will be created in the Windows "Public Documents" folder, under a sub-folder called Flite\FluidFlow3, e.g., C:\Users\Public\Documents\Flite\FluidFlow3.

Example FF3NLOG.CSV

Additionally, you can track who has last edited anything under the 'Database' menu item. This is not very detailed though, and only records who added/deleted/modified records under what "component group" (e.g., Valves), and when. This usage tracking is off, by default; you need to specifically turn it on in the PSFF.INI using the UpdateDataLogFile entry.

[Options]
UpdateDataLogFile=1

(Note: To turn off, remove the entry or set it to 0, e.g., UpdateDataLogFile=0)

A typical PSFF.INI, with both logs on, might look like:

[Options]
DataFolder=\\ServerX\FluidFlow3\Data
PreferencesFolder=\\ServerX\FluidFlow3\Preferences
NetworkAccessFolder=\\ServerX\FluidFlow3
UpdateNetworkLogFile=1
UpdateDataLogFile=1

In the above, the FF3NLOG.CSV and DATALOG.CSV log files will be created in the \\ServerX\FluidFlow3 folder. You can open these files in Excel (or any text editor - .CSV is a comma-separated values file.)

[NetworkLogFile] Section

Within the PSFF.INI file, there's an optional NetworkLogFile section that can be used to control the logging:

Entry | Default | Description
DateFormat | dd-mm-yyyy | Default to the short-date format for your regional settings, for example, to dd-mm-yyyy. See here for the formatting options.
Filename | FF3NLOG.CSV | Defaulting to FF3NLOG.CSV, this is the name of the file to which to save the logging data. If specified, do not include a path, as the NetworkAccessFolder is where it will be placed.
RecordSeparateEvents | 0 | 0 = record login/logout as a single event; 1 = record them as separate entries in the log file.
RecordSeparateModules | 0 | 0 = note all the modules selected on login as a single string; 1 = record them as separate entries in the log file.
RecordWindowsUserName | 1 | 0 = do not store the Windows Username of the FluidFlow3 user in the log file; 1 = record the Windows Username.
RecordWindowsComputerName | 1 | 0 = do not store the Windows Computer Name in the log file; 1 = record the Windows Computer Name.
MaxEntries | 0 | Defaulting to 0, meaning no maximum, if specified the logging entries will "loop" around when the maximum is reached.


Nomenclature

Nomenclature used in mathematical formula in this help file.

A Area (m2)

Ap Pipe cross sectional area (m2)

β Orifice hole/Pipe diameter ratio (-)

C1 Orifice plate discharge coefficient (-)

Cp Heat capacity at constant pressure (J/kg °C)

Cd Drag coefficient on a particle at the terminal settling velocity (-)

Cs Coefficient of friction between the bed flow and the pipe wall.

Cv Volume fraction concentration of a slurry. This is the concentration that is discharged from the pipe and may be different to the concentration in individual pipe segments (-). Also this term is used to express valve flow coefficient (see Kv)

D Diameter or Hydraulic diameter (m)

Dh Hydraulic diameter (m)

D1/ D2 Pump Impeller diameter ratio. (-)

Dc Cyclone body inner diameter (m)

Dis Inside shell diameter of a shell and tube exchanger (m)

DR Displacement volume per revolution (m3)

Dp Packed bed equivalent spherical diameter defined as 6 x Volume of the particle/surface area of the particle (m)

d50 For settling slurries, the mass mean particle diameter. (m)

d85 For settling slurries, the particle diameter for which 85% of the particles are finer. Percentage is mass percent. (m)

ε Void fraction of a packed bed, which is the ratio of the void volume to the total volume (-)

fD Darcy friction factor. FluidFlow uses the Darcy friction factor in all calculations and results (-)

fF Fanning friction factor used by some formula. Note fD = 4fF (-)

fp Friction factor used in a packed bed, defined by the Ergun Equation (-)

fTP Two phase friction factor (-)

Fr Froude number (-)

G Mass Flux. Mass flow per unit area (kg/m2 s)

g Acceleration due to gravity (m/s2)

Hb Height of a packed bed (m)

Hv Heat of Vaporization (J/kg)

H1/H2 Pump head ratio (-)

η Pump Efficiency (-)

K Pressure loss coefficient (-)

Kf Pressure loss coefficient expressed in terms of equivalent length in pipe diameters (-)

Kv Valve flow coefficient expressed in terms of volumetric flow per unit of pressure loss (e.g. m3h/kPa or usgpm/psi)

Ks Nominal K for a sprinkler (m3/s Pa0.5)

L Pipe length (m)

m Mass flow (kg/s)

M Mass fraction of a phase (-) or

the exponent to the stratification ratio which accounts for the distribution of particle sizes.

N Coriolis Coefficient (-)

N1/N2 Pump speed ratio (-)

m Dynamic viscosity (Pa/s)

Φ Frictional increase in pressure drop due to the presence of solid particles (-) or

Friedel correction factor

po Stagnation pressure (Pa)

p Static pressure (Pa)

ΔP Total pressure loss (or gain) (Pa)

ΔPs Pressure drop due to friction for the slurry mixture (Pa)

ΔPf Pressure drop due to friction of the carrier fluid (Pa)

Ph Pump, Fan or Compressor Power (W).

ρ Static density (kg/m3)

Q Volumetric flowrate (m3/s)

Q1/Q2 Pump volumetric flow ratio (-)

Rep Packed bed Reynolds Number, Dp Vs ρ / ((1-ε) μ) (-)

S Speed (Revolutions per second)

Ss Relative density of the solids (-)

Sf Relative density of the carrier fluid (-)

T0 Stagnation Temperature (°C)

T Static Temperature (°C)

Tb Boiling point temperature at any given pressure (°C)

Tk Thermal conductivity (W/m °C)

U Internal specific heat energy (J/kg)

v Velocity (m/s)

V50 Value of Vm at which 50% of the solids are in suspension (m/s)

Vf The actual velocity of the carrier fluid in the vertical section

Vm Velocity of a two phase mixture (m/s)

Vs Superficial fluid velocity in a packed bed (m/s)

VsG Superficial gas velocity (m/s)

VsL Superficial liquid velocity (m/s)

w Mass flow (kg/s)

X Vapor quality (-)

z Elevation at any point (m)

Subscripts:

1 Refers to properties at the inlet to an element

2 Refers to properties at the outlet to an element

L Refers to the liquid phase

G Refers to the vapor phase


Reference Literature

During the development of this software, consultation with many individuals and thousands of texts and papers has been made. Only the most important literature sources are shown below.

[1] Introduction to Practical Fluid Flow - R. P. King ISBN 0 7506 4885 6

[2] Slurry Transport using Centrifugal Pumps - KC Wilson, GR Addie, A Sellgren and R Clift - 3rd Ed ISBN 0 387 23262 1

[3] Mechanistic Modeling of Gas-Liquid Two-Phase Flow in Pipes - O. Shoham ISBN 978 1 55563 107 9

[4] Internal Flow Systems - D. Miller - 2nd Ed ISBN 0 947711 77 5

[5] Handbook of Hydraulic Resistance - IE Idelchik 3rd Ed ISBN 1 56700 074 6

[6] Relief Line Sizing for Gases - HA Duxbury - The Chemical Engineer Nov and Dec 1979

[7] Chemical Engineering Fluid Mechanics - R. Darby 2nd Ed ISBN 0 8247 0444 4

[8] The Flow of Complex Mixtures in Pipes - G Govier and K Aziz

[9] Slurry Systems Handbook - BE Abulnage

[10] Fluid Flow Handbook - J. Saleh - ISBN 0 07 136372 6

[11] A Basic Approach to Wellbore Two Phase Flow Modelling - AR Hasan, CS Kabir and M Sayarpour - SPE 109868

[12] Process Heat Transfer Principles and Applications - R Serth - ISBN 978 0 12 373588 1

[13] Flow of Fluids through valves, fittings and pipe - Crane Technical Paper 410M

[14] Thermodynamics of Incompressible and Compressible Fluid Flow AIR 1168/1 - SAE International

[15] Stromung und Druckverlust - Walter Wagner - ISBN 3 8023 1879 X

[16] Two-Phase Flow in Complex Systems - S Levy ISBN 0 471 32967 3

[17] Cameron Hydraulic Data Book - Flowserve

[18] Hydraulic Institute Standards

[19] Flow Equations for Sizing Control Valves - Instrumentation Society of America-S75.01 - 1985

[20] Chemical Engineers Handbook - Perry - 5th to 8th Edition

[21] Friedel L. Improved friction pressure drop correlations for horizontal and vertical two phase pipe flow. Ispra European Two Phase Flow Group meet, Paper F2 (1979).

[22] A Simple Mechanistic Model for Void Fraction and Pressure Gradient Prediction in Vertical and Inclined Gas/Liquid Flow Khasanov et al SPE.

[23] Liu Dezhong - The Application of Liu Dezhong Formula in Slurry Piping Systems.

[24] Pipe Flow - A Practical & Comprehensive Guide - Donald C. Rennels & Hobart M. Hudson - AIChE.

[25] Flow Equations for Sizing Control Valves - ISA-75.01.01-2007.

[26] Industrial Regulator Application Guide.

[27] VDI Heat Atlas (VDI Wärmeatlas) - Second Edition - Springer - ISBN 978-3-540-77876-9 2010.

[28] Slurry Transport using Centrifugal Pumps, R. Visintainer, V. Matousek, L. Pullum, A. Sellgren, 4th Edition. ISBN 978-3-031-25439-0

[29] Kinematic friction of concentrated suspension of neutrally buoyant coarse particles, RB Spelay, RG Gillies, SA Hashemi, RS Sanders. BHR Group Hydrotransport 20.

[30] Effect of pipe inclination on internal structure of settling slurry flow at and close to deposition limit. V. Matousek, M. Kesely, Z. Chara. Powder Tech. 343, 533 - 541 (2019)


Acknowledgements

Many people have worked together over the last 18 years to help produce this product. In particular we would like to thank the following contributors outside of Flite Software NI Limited.

Graeme Ashford of Accutech, who has provided many ideas for product improvement, for his efforts with the pen in filling in the gaps left by our documentation and for his encouragement when the going gets tough.

Walter Kramer of NEM (Netherlands), who helped make sense of tee loss relationships and provided smoothed equations for Idelchik tees, after reference back to the original Russian texts.

Jon Van Mourik a hydraulic consultant engineer, for his persistence and attention to detail.

Prof. Liu Dezhong for his continued help and support in implementing and testing his latest slurry pipeline pressure loss model in FluidFlow. Prof. Liu Dezhong is the Director of the Slurry Transportation Special Committee in China Mining Academic Committee and a professional Senior Engineer engaged in slurry pipeline transportation design and scientific research in China ENFI Engineering Corporation (ENFI) for more than 50 years.

Dr.ir. S.A. Miedema Associate Professor Offshore & Dredging Engineering, Educational Director MSc. Offshore & Dredging Engineering & Marine

Technology Mekelweg 2, 2628CD, Delft.

The many hundreds of end users who have provided ideas on how the product can be improved.


Technical Support

There are three levels of technical support assistance available from Flite Software NI Ltd.

Level 1: Product Training.

Training courses are held at customer sites. The standard offering is a two day course covering a blend of liquid and gas flow theory, software training and advanced modelling techniques. We then roll all these facets together to model real world systems applicable to the customer's industry. We also take sample systems which have various errors and work through each to find an acceptable solution. This ensures users have a thorough understanding of the best approach to take when solving a given system.

Note, all courses are tailored to individual customer requirements and as such, training is also provided for two phase flow and slurry flow systems.

Training Course Testimonial

"FluidFlow has been instrumental in designing pipeline systems for Lycopodium Minerals Canada. The training provided was succinct and effective in familiarizing the Engineers with the software. Well organized training literature and actual industrial systems solved during the course continue to benefit our engineering team". Zuned Shaikh, Mechanical Engineer, Lycopodium Minerals Canada.

If you would like to check the availability of a training course for your organization, contact us at:

Telephone: Int. +44 2871 279 227

Email: support@fluidflowinfo.com

Level 2: FluidFlow Engineering Consultancy.

Flite Software NI Ltd offers a specialized engineering consulting service through our in-house engineering department. All our staff members are experienced Chartered Engineers with an exceptional depth of industry experience. This level of experience together with extensive product knowledge promotes efficient system design combined with a practical design approach.

We pride ourselves in developing energy efficient solutions and delivering technical excellence on all projects, no matter where in the world they are located.

If you are under time constraints and need a full system designed or are experiencing difficulty optimizing, troubleshooting a system, contact us at:

Telephone: Int. +44 2871 279 227

Email: consulting@fluidflowinfo.com

Level 3 -Technical Product Support.

Technical product support is available to all FluidFlow users with an annual Software Assurance policy. Technical support includes advice and tips on resolving any installation problems, resolving queries on using specific product features and resolving any modelling issues.

Organizations with an existing Software Assurance policy can download the latest maintenance releases of FluidFlow from our website. You can also keep up to date with FluidFlow news and webinars through our website.

Visit our website at: http://www.fluidflowinfo.com

Technical Support Testimonial

"Once again, I cannot begin to tell you the appreciation I have for your detailed answers and effort in my assistance in understanding FluidFlow". Gilbert Martinez, Mechanical Engineer, Alliance Engineering, U.S.

If you require technical product support, contact us at:

Telephone: Int. +44 2871 279 227

Email: support@fluidflowinfo.com