Occasionally glossed over, adding custom fluids is a fairly standard operation in Flownex that we don’t think about until it’s necessary. There are a couple of ways to do this which we’ll go over in today’s post. I am working in Flownex 188.8.131.5234.
Creating a mixed fluid
To create a mixed fluid we first need to create a folder for this fluid in our project database. This can be done in the charts and lookup tables pane by right clicking on “mixed fluids” and selecting “add category”. We can create our new fluid by right-clicking on the new folder and selecting “Add a new mixed fluid”. Note we can right-click and rename both the fluid itself and the containing folder.
To define our new mixed fluid we double-click on the new mixed fluid to open the editor. Here we can add the components of our mixed fluids.
Creating a new fluid from scratch
To create a fluid from scratch we repeat the same process of creating a folder and creating a new fluid as above with the exception being that we’d complete these steps under the “Pure Fluids” category. Once this is done we’ll need to double-click or right-click > edit our from scratch fluid and enter in the fluid properties. Note for many properties we can define the relationship with pressure and temperature as constant (non-dependent), table, equation, or script.
Importing a fluid
To import a fluid we will follow the same steps of creating the folder under pure fluids. Now instead of right-clicking and adding new we will right-click and select “import”. Then we simply navigate to our desired fluid file and click “Ok”.
In the window where you define your fluid you’ll notice the “Test” button. This feature can be utilized to test created fluids to confirm properties against known properties for given pressures and temperatures.
We can also copy and paste fluids from the master database into the project database to give us a good starting point for creating similar fluids (or extending properties to higher/lower temps/pressures).
The result layers in Flownex have evolved quite a bit over the last few iterations of the code. Although we might typically associate color-gradient results more with 3D CFD, it does have a place in 1D system modeling. Taking advantage of results layers in Flownex can give a very quick understanding of what is going on with our system, and, with a little customization, can be incredibly powerful as an addition to our design and analysis toolbelt. In this post I am using Flownex version 184.108.40.20634.
How to create a result layer
To create a custom result layer we must navigate to the results ribbon and select result layer setup.
First we want to right-click in the Result Layers window and add a new result layer.
There are two options to add the schema for our result layer. The first is to right-click on the Selected Result Layer Schemas and add either a specific or generic schema. The second, and my PREFERRED, method is to simply drag and drop results from components on the canvas into this window:
Note that I want to multi-select any component types which will be included in this result layer. This could be any flow components which share a common result such as “quality”. I also convert to generic because I want the result layer to apply to all pipes, not just the pipe I initially drag and drop the property from.
Defining the custom result layer
In this example I have a two-phase water network with a cold external temperature. I want to create a result layer to quickly see if the water is in the gas phase, liquid phase, or somewhere in-between. The problem I have been tasked with solving is ensuring that the water never condenses. I will need to determine where we may need to add additional heat flux to the network.
We can use the Quality result property to determine the phase of our fluid. Quality < 0 indicates fully liquid, quality between 0 and 1 indicates liquid/gas mixture, greater than 1 indicates fully vapor.
To make this work as intended I can set up a gradient with three increments going from -1 to 2. The idea being the lowest increment would encompass -1 to 0, middle increment would be 0 to 1, and the top increment would be 1 to 2. For the gradient mode I made sure to pick <-[MinValue, MaxValue]-> so that the max and min increments would extend past the specified range.
As we apply this to our network we can easily see that we do, in fact, have a phase change from gas at the inlet, to mixture in the second two component, to fully liquid near the outlet.
I may decide to add a heater to our outlet pipe and perhaps a thicker insulative layer to all three to attempt to keep the water in gas phase throughout the system.
Result layers can also be super handy when troubleshooting to quickly identify large pressure differentials, choking points, or other outlying fluid properties.
Compound components make it easy and efficient to reuse the same collection of components over and over throughout your models. In this post I’ll be going over the basics of making a user-friendly and aesthetically pleasing compound component. In this example I am working in Flownex Version 220.127.116.1134
How to create a compound component
To create a compound component we must first create a local library in the project database. This can be done by right-clicking on the project database in the components pane and select “New Library”.
We can name our new library and choose a picture if desired:
To create our compound component we just need to right-click on the new library and select “New Compound Item”
To build our compound component we’ll use the “edit” function on the compound component. In this example I am building a Lohm resistor component. It’s a good idea to test my component on a separate page to make sure scripts interact as expected and validate results against some given test cases.
Let’s make it functional!
To define the inputs and results we’d like to expose to the user we right-click on the new compound component in the library and select “component setup”.
To add inputs and results we need to navigate to the Compound Setup ribbon and then simply drag and drop inputs and results into the Selected Properties window. Note that we can even grab whole categories of inputs or results to save time!
Now those inputs and results will appear to the user when they add this compound component to their canvas!
Let’s make it pretty!
To make our component more aesthetically appealing let’s replace the boring default icon with one more representative of our Lohm Resistor. To do this we right-click on our compound component again and this time stay in the “Display Setup” tab. We can click the “Choose Picture” button to upload our own icon. To refresh on the image selector check out the blog post on adding a background image.
To correct the aspect ratio so that it shows up looking less squished on our canvas we want to change the settings back in the Compound Setup tab. I’ll change it to 133×34 so that it appears similar in scale to the standard flow components but correct in the aspect ratio.
Now when we place our compound component onto our canvas it should look great!
In the compound component setup there is a third ribbon called “Tooltips Setup”. This is where we can define what properties show up when we hover our mouse over the component.
Don’t forget we can save compound components in a “database” on a server so that they can be accessed by every Flownex user in your organization.
Building on last week’s global parameters example I’d like to show some tricks within the input sheet environment. These are really more so excel tricks – but the methodology within Flownex is slightly different. In this example I am working in Flownex Version 18.104.22.16834
Refresher on using Input Sheets
To create a new Input Sheet we will navigate to the project tab, then select “Excel Reports/Pages”, right-click on the Input Sheets folder, and select “New Input Sheet”
To add inputs to the sheet it’s as simple as dragging and dropping the inputs from the component into the desired cell in the Input Sheet.
Formatting our Input Sheet
I like to use color, shading, and border to specify which cells contain inputs so that if I pass the project off to a client or colleague it is immediately clear what variables they should be editing and which cells they shouldn’t change.
To modify the formatting we need to enter “workbook designer”. This is done by right-clicking on the input sheet and selecting “workbook designer”
All of the standard Excel-type formatting is available here, including adding graphs, images, etc. Typical operations are found in the format menu on the top ribbon.
A more advanced Excel operation I like to integrate into these types of input sheets is a drop-down where multiple inputs may be tied to a given condition. In the example below I set up a scenario for given ambient temperature for cold day, hot day, and nominal day.
In the workbook designer we will click “insert” > “worksheet” and build our list of environmental conditions. On the right we will set the associated temperatures.
Back on Sheet1 we will need to set up the data validation cell reference to this table. Select the cell where we want to add the dropdown and go to data > validation. We will choose list, and reference cells B2:B4 of Sheet2.
We will need to use VLOOKUP to associate the temp to another cell based on this dropdown. Where this becomes valuable is when we have many input variables tied to each of the dropdown selections.
In this example, since we’ve put the applicable temps a single column to the right the syntax for VLOOKUP will be “=VLOOKUP(B5,Sheet2!B2:C4,2,FALSE)”. After this is added it should behave as follows:
As I mentioned before, this trick becomes very powerful when you have many different environmental or operational inputs tied to a single “scenario” that you want to model in an individual run rather than in a parameter study.
All of these tricks can be applied to any of the excel-type sheets within Flownex. Remember to be careful with parameter tables as the inputs and results are tied to the columns instead of individual cells.
As we build more and more networks it quickly becomes tedious to enter in the same inputs many times. There are a couple methods of using global parameters to save us lots of time and clicks. In this example I am working in Flownex Version 22.214.171.12434
Refresher on Global Parameters
Global parameters are just what they sound like. Parameters defined globally for the project. These could be any type of component input; diameter, length, temp, pressure, etc.
The global parameters can be found in a couple of locations. Under the configuration ribbon we can open the global parameters in a floating window which gives us a friendly interface for creating or modifying these parameters. To create a global parameter one may simply right-click in the GlobalParameters window and select Add (hint: there’s a better way!).
Global parameters can also be accessed in via the solver tab in a similar way to typical inputs (this is important later on).
The Quick way to add Global Parameters
We don’t really want to have to navigate to that configuration ribbon, right-click a bunch, choose names and assign units do we? Good news! There is a much faster way to add a global parameter. We can add a global parameter with minimal work by simply typing a dollar sign “$” prefacing the name of the tag in any of our component input fields! Remember to hit enter after typing the identifier.
Once a global parameter has been defined we can tie more inputs to the existing parameter by typing the dollar sign “$” and choosing the correct parameter from a drop down:
As you can see, this can be quite a time saver when building a network! The next trick utilizing global parameters will have to do with using them for actual analysis.
Using Global Parameters as Manipulatable Inputs
The default/slow way to change a global parameter would be to go to the configuration ribbon > global parameters, and manually change the value in the floating window. No thanks. This is not automated at all and requires many clicks.
The better way to utilize the global parameter as an input would be to tie the global parameter to an input sheet, parameter table (for a parametric study), or even a human machine interface component (HMI).
Global Parameters in Input Sheet
For a design variable that an analyst or engineer may change which would then remain constant (such as pipe diameter) the input sheet comes in very handy. To reference a global parameter in the input sheet recall the second method to access the global parameters and then simply drag and drop onto the input sheet:
Global Parameters in Parameter Table
If you are trying to run a parametric study where you are varying something like ambient temperature, it makes sense to use a global parameter as you may have many boundary conditions defined by a single global parameter. Similar to the input sheet this can be tied to a global parameter by a simple drag and drop operation:
Global Parameter in a Human Machine Interface
By now I expect you are catching on. The trick to defining a global parameter externally is to use the second method; solver tab > global parameters, and then drag and drop to your desired connection. In the HMI instance I’ve tied inlet mass flow to a Track Bar so that a user can dynamically change the flow rate during the solve:
Global Parameters are efficient and POWERFUL
We can use global parameters during network construction using the “$” shortcut to build our networks much more quickly and keep identical inputs the same. We can tie these global parameters to other tools to keep our user inputs all in one place, reducing clicks, and reducing the chance of forgetting to update an input.
Global Parameters can also be used in Designer so that you can keep your independent to dependent variable count the same (EX: Adjusting ALL pipe diameters to target a single exit flowrate)
Global Parameters can be adjusted via transient actions (EX: Adjusting ambient temperature to model the changing temperature over the course of 24 hours).
In this post I will go over what is usually the first step in any Flownex network I build. Adding a background image not only helps me lay out my network but also helps colleagues and clients understand networks at a very quick glance. In this example I am using Flownex version 126.96.36.19934
Choosing an Appropriate Image
The first thing we want to do is to make sure that the image size is such that it’s reasonable in size both resolution-wise (so it doesn’t appear pixelated), and right-size so that components don’t appear too small when placed on top. I recommend something in the multi-thousand of pixels both in width an height. 3000 pixels at a minimum. I usually shoot for around 10,000 wide by 5,000 high if the background image will be landscape. For very complex, large networks, it may make sense to go much larger.
Once we’ve found an appropriate image we will want to make a note of the exact size. This can be found by right-clicking on the image file, selecting properties, and navigating to the details tab.
Resizing Flownex Canvas
The canvas in Flownex can be resized to match this resolution by right-clicking on the canvas, selecting edit page, and populating the correct inputs:
Applying Background Image
The background image can be applied by clicking the radio button next to Style in the Appearance subcategory. Here we will change the Fill Style type to Image, then click the Select Image button:
The images saved locally to this project will appear here. To add an image we simply click Add Image, navigate to the image of our choice, and click open. Now that it is available as an option we select the image in the Image Selector Gallery and click OK.
We can press OK in the Styles Editor to confirm our changes and we should now see our added image as the new background!
Adjusting the Fill Style opacity can fade out the background image so that it doesn’t overwhelm the Flownex components placed on top.
Turning off the grid under the View ribbon can make the canvas a bit more aesthetically pleasing.