Solver Setting - FS Solver
Jump to navigation
Jump to search
Navigation: User Guide ➔ Menu Commands ➔ View ➔ Solver Settings ➔ FS Solver
SS Only | Dynamic Mode Only | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
FS_Solver | ProBal | Dynamic | Method | Scenario | Spills | Vents | SS Monitor | SS Finder | Convergence | GlobalTear | Tears | TearTags | Tolerances | Analysis | Changes |
This tab allows the user to set some solver related tags as well as display the current status for the SysCAD application. Tag groups on this tab include:
- Project Solver - Displays current settings for Solver Mode and Heat Calculations. (Available from Build 139.)
- Multithreading - Allows user to set the number of threads used by the solver.
- Application and Solver State - display information only.
- Solver Commands and actions - command buttons can be used by external application, such as Excel or PGM
- Scenario Load and Save Commands - naming and command buttons for external use.
- Flange tag renaming options
Tag (Long/Short) | Input / Calc | Description/Calculated Variables / Options |
Project Solver (Only available in Build 139 or later) | ||
Project.SolverMode | Display | Displays mode of project, either ProBal (steady-state) or Dynamic. |
Project.HeatCalcs | Display | Displays if Heat Calculations (Energy Balance) are being used in the project, 0 = No, 1 = Yes. The user can change this project setting (see Project Settings - Modes Tab). |
Project.DefaultNodeMode | Display | Displays the default method used to analyze surge solution. See Solution Settings |
Project.DefaultLinkMode | Display | Displays the default method used to analyze pipe connections. See Solution Settings |
Project.DefaultFlowMode | Display | Displays the default method used to analyze dynamic transfer flow (Push or Pull). See Dynamic Method Settings |
MultiThreading | ||
Packages | Display | This shows the number of physical processor packages present in the computing hardware. |
Cores | Display | Available from Build 138.26255. This shows the number of processors (CPU cores) found present in the computing hardware. |
Logical.Processors / Logical | Display | Available from Build 138.26255. This shows the number of virtual or logical processors found present. |
NoOfProcessors/Processors | Display | Removed in Build 139. This shows the number of processors (CPU cores) available in the computing hardware. This is usually equal to Cores unless CPU affinity has been used to reduce the number of cores available to an application. |
NoOfHyperThreads/HyperThreads | Display | Removed in Build 139. This shows the number of virtual or logical processors available. This is usually equal to Logical unless CPU affinity has been used to reduce the number of cores available to an application. |
Logical.Available | Display | Available from Build 139. This shows the number of virtual or logical processors available. This is usually equal to Logical.Processors unless CPU affinity has been used to reduce the number of cores available to an application. |
Affinity.IDs | Display | Available from Build 139. This shows the number of virtual or logical processors in use as numbers. |
Affinity.Mask | Display | Available from Build 139. This shows the number of virtual or logical processors in use as mask. |
SolverThreadsRequired | Single Threaded | Use a single thread. |
Match Method6 | Available from Build 138.26255. If there are less than 6 cores (Processors) available then Match HyperThreads-1/LogicalProcessors-1 is used. Otherwise if there are 6 or more cores (Processors) then Match Cores / Processors is used. | |
Match HyperThreads / LogicalProcessors | Solver uses 'M' worker threads, where M is the number of hyperthreads/logicalprocessors if M>1 | |
Match HyperThreads-1 / LogicalProcessors-1 | Solver uses 'M-1' worker threads, where M is the number of hyperthreads/logicalprocessors if M>1 | |
Match Processors / Cores | Solver uses 'M' worker threads, where M is the number of cores if M>1 | |
UserSpecified | Use the Threaded Solver with N sets of worker threads, where N is specified by the user in the SolveThreads.Reqd field below. | |
SolveThreads.Maximum | Input | Available from Build 138.26255. Sets the maximum number of worker threads for the threaded solver. Note this maximum is imposed regardless of the setting of SolverThreadsRequired. |
SolveThreads.Reqd | Input | This field is only visible if the UserSpecified SolverThreadsRequired option is chosen. Sets the number of worker threads for the threaded solver. |
SolveThreads.Used | Display | The number of worker threads used for the threaded solver. |
ControlThreading | Single Threaded | Run controllers through single thread (sequentially). |
Multi Skip # Steps | Run controllers with multiple threads (in parallel), this is only done after the user specified (SingleStepCount) number of iterations/steps. | |
SingleStepCount | Input | This field is only visible if the Multi Skip # Steps ControlThreading option is chosen. Specifies the number of iterations (or steps for dynamic project) after which parallel multithreaded solver is used for solving control actions. |
Execute.Optimisation | Off | No optimisation of the solver evaluation sequence multi-threading is performed. |
NumberofNodes | The optimisation of the solver evaluation sequence multi-threading is based on the number of nodes (units/links) to be solved in a path. | |
TimeToComplete | The optimisation of the solver evaluation sequence multi-threading is based on the sum of evaluation time in the last iteration in a path. | |
Application and Solver State (All dropdown lists are based on most current version. Previous versions may have less options.) | ||
AppState | The current SysCAD (application) state as an integer. This is a special tag for OPC connectivity that is always communicated on change to connected OPC Servers/Clients. The Application State can be used as triggers to let other applications (such as OPC servers) know if SysCAD is ready to receive the Start Solver command. | |
AppState.AsDropList | The current SysCAD (application) state as dropList, describing the AppState return value. | |
AppState.Description | The current SysCAD (application) state description. This is also reflected on the SysCAD Marshal Application status bar (Bottom Right hand corner) | |
AppState.Detail | The current SysCAD (application) detailed state as an integer. This is a special tag for OPC connectivity that is always communicated on change to connected OPC Servers/Clients. | |
AppState.Detail.AsDropList | The current SysCAD (application) detailed state as dropList, describing the AppState.Detail return value. | |
AppState.Detail.Desc | The current SysCAD (application) detailed state description. This is also reflected on the SysCAD Application status bar (Bottom Right hand corner) | |
AppState.FullDetail | The current SysCAD (application) overall state as an integer. | |
AppState.FullDetail.AsDropList | The current SysCAD (application) overall state as dropList, describing the AppState.Overall return value. | |
AppState.FullDetail.Desc | The current SysCAD (application) overall state description. This is also reflected on the SysCAD Application status bar (Bottom Right hand corner) | |
Solver Commands and Actions (See also Actions Commands, Solver Set up for Steady State Projects - Options or Solver Set up for Dynamic Projects - Start Options and Startup Reset Actions on the Dynamic Configuration access window (for dynamic projects only). See Set State on the Info Tab for setting the state of a single unit). | ||
Cmd.Start | This is the same as menu option "Actions - Run", pressing this button starts the SysCAD simulation. This button is here so that user can make use of the command from external packages, such as calling SysCAD Start (solve) from Excel or other Operator Interface. To get the command Right Click on the variable name and select Copy FullTag. | |
Cmd.Idle | This is the same as menu option "Actions - Pause (Idle)", pressing this button pauses the SysCAD simulation. This button is here so that user can make use of the command from external packages, such as calling pausing SysCAD (solve) from Excel or other Operator Interface. To get the command Right Click on the variable name and select Copy FullTag. | |
Cmd.Stop | This is the same as menu option "Actions - Stop", pressing this button Stops the SysCAD simulation. This button is here so that user can make use of the command from external packages, such as calling SysCAD to Stop solving from Excel or other Operator Interface. To get the command Right Click on the variable name and select Copy FullTag. | |
SetStateAll | Blank | No action required |
Complete_Reset | This option is effectively a combination of all the following SetState options. | |
Reset_Process | This will empty all pipes and flow values when the run begins. | |
Reset_Control | This will reset all controllers back to 'Base' state, i.e. the same state as when the controller is first inserted into the project. This is mainly relevant for PID controllers. | |
Reset_Statistics | Selecting this will Reset the Statistical blocks when scenario is started (used for Dynamic models). | |
Reset_EventsProfiles | Only relevant for Dynamic projects. This will reset all Event and Profiles back to start time. | |
Empty_Process | Only relevant for Dynamic projects. This Empties all containers with surge, e.g. Tanks. | |
Preset_Process | Only relevant for Dynamic projects. This resets all containers with surge that have the 'Preset.On' button ticked and have Preset data. | |
Remove_Quals | This resets all qualities. | |
Copy_to_Preset | Only relevant for Dynamic projects. Copies existing composition of surge to the preset image. | |
SetTimetoZero | Reset the starting time to zero. | |
SetActionAll | Shown as button list, user can select any of the following actions:
| |
Cmd.CompleteReset | This option is effectively a combination of all the above SetAction options. This option re-initialises the SysCAD solution and is used to clear previous BAD solutions from incorrect feed or unrealistic model configuration. Pressing this button will often force a fresh restart on the solved solution. Users can use this command in PGM, Event file or from Excel. | |
Cmd.ResetProcess | Only visible for Dynamic projects. This will empty all pipes and flow values when the run begins. | |
Cmd.ResetControl | Only visible for Dynamic projects. This will reset all controllers back to 'Base' state, i.e. the same state as when the controller is first inserted into the project. This is mainly relevant for PID controllers. | |
Cmd.ResetStatistics | Only visible for Dynamic projects. Selecting this will Reset the Statistical blocks when scenario is started. | |
Cmd.ResetEventsProfiles | Only visible for Dynamic projects. Selecting this will reset all Event and Profiles back to start time. | |
Cmd.EmptyProcess | Only visible for Dynamic projects. This Empties all containers with surge, e.g. Tanks. | |
Cmd.PresetProcess | Only visible for Dynamic projects. This resets all tanks that have the 'Preset.On' button ticked and have Preset data. | |
Cmd.ClearTear | This clears all tears. In Dynamic this includes emptying contents of Tear Accumulation Buffer. | |
Cmd.SetTimetoZero | Only visible for Steady State projects. This is the same as menu option Actions - Set Time to Zero. | |
Cmd.RestartTime | Only visible for Dynamic projects. Restarts time when solver starts. This is the same as menu option Actions - Set Time to Zero. | |
Conditions to Prevent Solver Start (Available from Build 139.31388.) | ||
StopForRCTFileError / RCTFileError | Tickbox | Available from Build 139.31388. Prevents project from running if there is an RCT file missing or fails to load. Also available on any RB page. |
StopForPGMFileError / PGMFileError | Tickbox | Available from Build 139.31388. Prevents project from running if there is a PGM file missing or fails to load. Also available on any GControl page. |
StopForMPFileError / MPFileError | Tickbox | Available from Build 139.31388. Prevents project from running if there is an MP file missing or fails to load. Also available on any MP page. |
Options for setting T and P when no flow (Only available in dynamic projects) | ||
NoFlow... | ||
ActionTempPress / ActionTP | None | No action required. Temperatures and pressures will usually be equal to what they last were when there was flow. |
Standard | The temperature and pressure of streams with no flow will be set to the Standard temperature and pressure. They are shown on the Plant Model - Environment page. They are hard-wired to 25°C and 101.325kPa. | |
Environment | The temperature and pressure of streams with no flow will be set to the Environment temperature and pressure. They are shown on the Plant Model - Environment page, where the user can specify the environment temperature and elevation (which determines the environment pressure). | |
User | The temperature and pressure of streams with no flow will be set to the user specified temperature and pressure. | |
TolMassFlow / TolQm | Input | The user specified tolerance for deciding if stream has no flow. Any streams with flow less than this value will be considered as having no flow. |
UserTemp / UserT | Input | Only visible if User has been selected for ActionTempPress. The user specified temperature to be used for all streams with no flow. |
UserPress / UserP | Input | Only visible if User has been selected for ActionTempPress. The user specified pressure to be used for all streams with no flow. |
Scenario Load/Save Commands (Option to Save as zip is on/off) | ||
ScenarioFilenamePrefix / ScnFilePrefix | Input | The prefix text for the Scenario Filename. (For example: Scen0001.scn.zip, where Scen is the Prefix.) |
ScenarioFilenameNumber / ScnNumber | User or SysCAD Input | The number for Scenario Filename.
|
Cmd.SaveScenario | This will send a Save Scenario Command to SysCAD, the scenario name will be made up by ScenarioFilenamePrefix and ScenarioFilenameNumber. (For example: Scen0001.scn.zip) | |
Cmd.SaveScenarioInc | This will send a Save Scenario Command to SysCAD, the scenario name will be made up by ScenarioFilenamePrefix and ScenarioFilenameNumber. (For example: Scen0001.scn.zip) After the file is saved, it will change the ScenarioFilenameNumber to n+1, where n is the last number used. (For example: If this command is used again, then next file will be Scen0002.scn.zip) | |
Cmd.LoadScenario | This will send a Load Scenario Command to SysCAD, the scenario name will be made up by ScenarioFilenamePrefix and ScenarioFilenameNumber. (For example: Scen0001.scn.zip) The scenario file must exist for the command to complete successfully. | |
Flange Tags - This is a tool for renaming existing Flanges (and associated Tears). New Flanges will always use the Flng_NNN notation. | ||
FlangeTags.Format | Flng_NNN | The chosen format for renaming all flanges is Flng_NNN, for example: Flng_001, Flng_002, etc. |
Flng/NNN | The chosen format for renaming all flanges is Flng/NNN, for example: Flng/001, Flng/002, etc. | |
F_SrcTag_DstTag | The chosen format for renaming all flanges is F_SrcTag_DstTag, where SrcTag is the tag of the source unit and DstTag is the tag of the destination unit. For example: F_P_001_TNK_001 for a flange between pipe P_001 and tank TNK_001. | |
F/SrcTag/DstTag | The chosen format for renaming all flanges is F/SrcTag/DstTag, where SrcTag is the tag of the source unit and DstTag is the tag of the destination unit. For example: F/P_001/TNK_001 for a flange between pipe P_001 and tank TNK_001. | |
FlangeTags.Rename | If this button is pressed, all flanges in the project will be renamed using the chosen FlangeTags.Format. | |
Flow Estimation Networks (Only available in dynamic projects. Removed in Build 139.) | ||
Nets | Display | Only updated once project is run. |
SubNets | Display | Only updated once project is run. |
Nodes | Display | Only updated once project is run. |
FxdLnks | Display | Only updated once project is run. |
LoneLnks | Display | Only updated once project is run. |
NetLnks | Display | Only updated once project is run. |